程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 解決memcache中使用session_start啟動慢

解決memcache中使用session_start啟動慢

編輯:關於PHP編程

session_start啟動慢是自己的機器使用了memcache來緩存session了,這樣發現用戶登錄之後mysql查詢超級慢了,下面我來介紹一個臨時的解決辦法。


下面是我們的測試頁面,就幾句

 代碼如下 復制代碼

<?php

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;
}

最後的樣子如下:

 代碼如下 復制代碼

<?php

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;
}

.....
?>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved