亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    PHP提高SESSION響應(yīng)速度的方法有哪些

    PHP提高SESSION響應(yīng)速度的方法有哪些

    1、設(shè)置多級目錄存儲SESSION

    默認session的存儲目錄是1級目錄,如果用戶量比較大,session文件數(shù)量就比較大,我們可以設(shè)置目錄數(shù)為2,使用2級目錄可以提交查找和存取速度。不過這種方式對速度的提升一般不是很明顯,可以通過修改php.ini,進而修改session存儲目錄數(shù)。

    session.save_path = "2;/tmp"

    2、將SESSION存儲到redis中

    php中的session默認是存儲在文件中的,支持redis存儲方式,因為redis的鍵值數(shù)據(jù)時存儲在內(nèi)存中的,可以提高session的存取速度。

    session.save_handler = redis session.save_path = "tcp://127.0.0.1:6379"

    3、及時釋放SESSION文件鎖

    我們在使用session時,需要先執(zhí)行session_start()函數(shù)。

    session_start()函數(shù)的作用如下:

    判斷http請求是否包含名為PHPSESSID的cookie,如果沒有則創(chuàng)建該cookie并寫入到http響應(yīng)的頭文件。

    通過PHPSESSID查找對應(yīng)的session文件,以讀寫方式打開的文件,然后讀取里面的數(shù)據(jù)到內(nèi)存。

    然后我們一般會通過$_SESSION這個超全局變量,讀取或者設(shè)置session的值,我們操作的時候,session的值都是保存在內(nèi)存中的,默認在頁面執(zhí)行完畢之后,才會寫入到對應(yīng)的文件中。

    我們通過下面的一段代碼測試這個過程:

    SESSION執(zhí)行過程分析:

    include "session_function.php";  //session_function.php代碼在附錄 session_start(); $_SESSION['name']="koastal"; echo "<br/>html content<br/>"; var_dump($_SESSION); echo "<br/>";

    輸出結(jié)果:

    open read html content array (size=1)   'name' => string 'koastal' (length=7) shutdown write close

    通過上面的例子可以發(fā)現(xiàn),在頁面執(zhí)行的過程中(頁面的執(zhí)行過程是指將php文件解析為對應(yīng)的html文件的耗時,而不是用戶在該頁面上的停留時間),session文件是被鎖定的。

    推薦教程:PHP視頻教程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號