php session實(shí)現(xiàn)多級(jí)目錄存放實(shí)現(xiàn)代碼
當(dāng)一個(gè)目錄下有很多文件時(shí),服務(wù)器的處理性能會(huì)變低,php默認(rèn)的session僅僅存放在/tmp目錄下,未進(jìn)行分級(jí),當(dāng)有一定的訪問量時(shí),就存在性能問題了。
首先,修改 php.ini的 session.save_path 選項(xiàng)修改如下:
session.save_path = “2;/tmp/session” (去掉前面分號(hào))
表示把session存放在 “/tmp/session” 目錄下,并且分成 2 級(jí)子目錄
一般情況下2級(jí)目錄就夠了,就能夠處理相當(dāng)大的訪問量了
———————–
其他注釋
session.hash_function = 0
; 生成SID的散列算法。SHA-1的安全性更高一些
; 0: MD5 (128 bits)
; 1: SHA-1 (160 bits)
; 建議使用SHA-1。
session.hash_bits_per_character = 4
; 指定在SID字符串中的每個(gè)字符內(nèi)保存多少bit,
; 這些二進(jìn)制數(shù)是hash函數(shù)的運(yùn)算結(jié)果。
; 4: 0-9, a-f
; 5: 0-9, a-v
; 6: 0-9, a-z, A-Z, “-“, “,”
; 建議值為 5
————————–
php源碼文件中ext/session/mod_files.sh文件,可以輔助生成目錄,就不用自己在寫腳本了
#! /bin/sh if test "$2" = ""; then echo "usage: $0 basedir depth" exit 1 fi if test "$2" = "0"; then exit 0 fi hash_chars="0 1 2 3 4 5 6 7 8 9 a b c d e f" if test "$3" -a "$3" -ge "5"; then hash_chars="$hash_chars g h i j k l m n o p q r s t u v" if test "$3" -eq "6"; then hash_chars="$hash_chars w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z - ," fi fi for i in $hash_chars; do newpath="$1/$i" mkdir $newpath || exit 1 sh $0 $newpath `expr $2 - 1` $3 done
設(shè)置為可執(zhí)行之后,運(yùn)行以下命令來創(chuàng)建哈希目錄:
#cd /root/soft_install/php-5.3.5/ext/session
#./mod_files.sh /tmp/session 2 5
三個(gè)參數(shù)依次表示,存放路徑, 幾級(jí)目錄,每個(gè)目錄生成多少個(gè)目錄(參考session.hash_bits_per_character)
另外需要注意修改 /tmp/session的權(quán)限,保證運(yùn)行php的帳號(hào)有權(quán)限讀寫
相關(guān)文章
php連接oracle數(shù)據(jù)庫(kù)的核心步驟
這篇文章主要介紹了php連接oracle數(shù)據(jù)庫(kù)的核心步驟,簡(jiǎn)要分析了php安裝Oracle擴(kuò)展設(shè)置及連接測(cè)試代碼,非常簡(jiǎn)單易懂,需要的朋友可以參考下2016-05-05
PHP7 preg_replace 出錯(cuò)及解決辦法
在本篇文章里小編給大家整理的是一篇關(guān)于PHP7 preg_replace 出錯(cuò)及解決辦法,有需要的朋友們可以跟著學(xué)習(xí)下。2021-12-12
php實(shí)現(xiàn)將普通數(shù)據(jù)轉(zhuǎn)化為json數(shù)據(jù)
在日常的開發(fā)工作中免不了要寫接口,json格式文本的輸出是制作接口必須掌握的,所以本文主要為大家詳細(xì)介紹了php如何將普通數(shù)據(jù)轉(zhuǎn)化為json數(shù)據(jù),需要的可以參考下2023-11-11
使用Huagepage和PGO來提升PHP7的執(zhí)行性能
這篇文章主要介紹了使用Huagepage和PGO來提升PHP7的執(zhí)行性能的相關(guān)方案,來自于注明的PHP開發(fā)組成員Laruence的相關(guān)研究,需要的朋友可以參考下2015-11-11
php獲得客戶端瀏覽器名稱及版本的方法(基于ECShop函數(shù))
這篇文章主要介紹了php獲得客戶端瀏覽器名稱及版本的方法,基于ECShop函數(shù)get_user_browser實(shí)現(xiàn)該功能,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-12-12

