首頁 > php教程 > php手册 > 解决memcache中使用session_start启动慢

解决memcache中使用session_start启动慢

WBOY
發布: 2016-06-13 10:10:27
原創
831 人瀏覽過

session_start启动慢是自己的机器使用了memcache来缓存session了,这样发现用户登录之后mysql查询超级慢了,下面我来介绍一个临时的解决办法。


下面是我们的测试页面,就几句

 代码如下 复制代码

session_start();
echo '111';exit

?>


CPU,IO,磁盘,内存……这些没问题的,都有排查过,刚开始以为网络问题、被墙、过滤、内存……问题,最后确定都不是.应该不是硬件资源问题了.

现在用额外加段代码能解决这问题,治标不治本,还没找到是什么原因导致session_start启动慢.
先自动创建一PHPSESSID,不用session_start自动分配的.

 代码如下 复制代码

if(!isset($_COOKIE['PHPSESSID']))
{
        setcookie('PHPSESSID', time(), time()+60*60, '/' );
        header('location:index.php');
        exit;
}

最后的样子如下:

 代码如下 复制代码

if(!isset($_COOKIE['zenid']) && $_SERVER['HTTP_USER_AGENT']!='UDROBOT')
{
        setcookie('zenid', md5(md5(time().rand(999,1000)).rand(999,1000)), time()+60*60, '/' );
        header('location:'.$_SERVER['REQUEST_URI']);
        exit;
}

.....
?>

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板