国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務(wù)器 > Web服務(wù)器 > 正文

服務(wù)器性能變慢 c盤temp文件夾存在大量sess開頭文件的問題原因及解決

2024-09-01 13:44:57
字體:
供稿:網(wǎng)友

通過搜查找到了問題所在并進(jìn)行了解決,在此詳細(xì)記錄以供參考。

一、 temp文件夾大量文件的刪除

以sess開頭的存在于temp系統(tǒng)臨時文件夾的文件,是php的session保存文件,由于php建立了session卻在過期后沒有成功刪除,于是導(dǎo)致大量文件的積累。

清理方法很簡單,新建批處理文件del_temp.bat,其中寫入如下命令:

復(fù)制代碼 代碼如下:


del %TEMP% /s /q *.*

保存后雙擊運(yùn)行,即開始進(jìn)行刪除處理(也可直接在cmd命令行中輸入執(zhí)行)
你也可以將其加入開機(jī)啟動項(xiàng),以使得每次重啟系統(tǒng)后即執(zhí)行一次刪除處理。

提示:

1. 如果這里執(zhí)行一直顯示無法進(jìn)行(志文工作室最先遇到的情況即如此),則可能是temp文件夾及其中部分文件正處于使用狀態(tài),那么你可以在同目錄下新建一個文件夾tmp,然后修改系統(tǒng)環(huán)境變量temp和tmp的位置為此,接著重啟系統(tǒng)使得新的臨時目錄生效,此時即可對temp文件任意刪改了。

2. 志文工作室的服務(wù)器temp文件夾內(nèi)存在數(shù)十萬這樣的文件,清理了若干小時才完成。故在進(jìn)行處理前應(yīng)停止iis:

net stop iisadmin 關(guān)閉iis服務(wù)
net start iisadmin 開啟iis服務(wù)

3. 當(dāng)然,你不希望在處理的過程中讓網(wǎng)站關(guān)閉如此之久,所以你應(yīng)依次進(jìn)行的操作是:

1>. 關(guān)閉iis
2>. 更改php保存session的默認(rèn)路徑(參考后面內(nèi)容)
3>. 開啟iis,檢查服務(wù)器所有站點(diǎn)是否正常
4>. 執(zhí)行del_temp.bat進(jìn)行清理

二、修改php的Session保存路徑session.save_path

1. 打開php.ini文件,查找到

“;session.save_path = "/tmp"”
將其修改為指定的位置用于存儲session,例如,志文工作室將其改為:

session.save_path = "c:/tmp/phpsession"
當(dāng)然你也可以使用分級目錄的方式,比如改為這樣:

session.save_path="5;c:/tmp/phpsession"

關(guān)于session的分級目錄存放請參考后續(xù)內(nèi)容詳解

2. 新建文件夾路徑:c:/tmp/phpsession

3. 添加該路徑(即phpsession文件夾)的internet來賓賬戶修改和寫入權(quán)限,注意最好不要給予執(zhí)行權(quán)限。

4. 啟動iis,觀察該目錄是否會有新的session文件產(chǎn)生。

三、php的session多級目錄存放解決大量臨時文件效率問題

session多級存放可以緩解一個目錄下session文件過多帶來的讀寫效率問題。

php.net上針對sesstion配置相關(guān)的說明:

session.save_path string

session.save_path 定義了傳遞給存儲處理器的參數(shù)。如果選擇了默認(rèn)的 files 文件處理器,則此值是創(chuàng)建文件的路徑。默認(rèn)為 /tmp。參見 session_save_path()。
此指令還有一個可選的 N 參數(shù)來決定會話文件分布的目錄深度。例如,設(shè)定為 '5;/tmp' 將使創(chuàng)建的會話文件和路徑類似于

/tmp/4/b/1/e/3 /sess_4b1e384ad74619bd212e236e52a5a174If
要使用 N 參數(shù),必須在使用前先創(chuàng)建好這些目錄。在 ext/session 目錄下有個小的 shell 腳本名叫 mod_files.sh 可以用來做這件事。此外注意如果使用了 N 參數(shù)并且 N 大于 0,那么將不會執(zhí)行自動垃圾回收,更多信息見 php.ini。
另外如果用了 N 參數(shù),要確保將 session.save_path 的值用雙引號 “quotes” 括起來,因?yàn)榉指舴痔枺?;)在 php.ini 中也是注釋符號。

參考以上說明,在定義session.save_path中可以定義多級存放的路徑,于是我們可以修改php.ini中的session.save_path為:

session.save_path = “2;/data/session_tmp”

如此將session文件分成兩級存放,即類似于

/data/session_tmp/4/b/sess_4b1e384ad74619bd212e236e52a5a174If

取session的前兩位字符作為二級目錄索引,但是php并不生成目錄,需要自己手工生成,這里提供一個php腳本來生成初始的目錄。

復(fù)制代碼 代碼如下:


<?php
$string = '0123456789abcdefghijklmnopqrstuvwxyz';
$length = strlen($string);
function makeDir($param)
{
if(!file_exists($param)) {
echo "mkdir ".$param."/n”;
exec("mkdir ".$param);
}
}

for($i = 0; $i < $length; $i++) {
for($j = 0; $j < $length; $j++) {
makeDir('/data/session_tmp/'.$string[$i].'/'.$string[$j]);
}
}
?>

session目錄分級處理之后,IO處理值增加,http進(jìn)程降低,web處理效率明顯好轉(zhuǎn)

相關(guān)參考

session.save_path目錄大量session臨時文件帶來的服務(wù)器效率問題

IIS PHP環(huán)境Temp文件夾的權(quán)限問題引起的網(wǎng)站故障

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 兴海县| 灵武市| 宁安市| 神木县| 岗巴县| 筠连县| 宣武区| 瓮安县| 修武县| 双牌县| 东兰县| 永平县| 东光县| 泗洪县| 穆棱市| 探索| 鄂托克前旗| 平阳县| 柏乡县| 拉萨市| 鄂托克旗| 迁西县| 南召县| 色达县| 和政县| 化隆| 政和县| 漳平市| 镶黄旗| 武城县| 林州市| 鹤山市| 长沙市| 二连浩特市| 星子县| 贡嘎县| 黄骅市| 张家川| 乐平市| 兴化市| 长春市|