Linux
網路伺服器:在 /dev/shm 上儲存會話文件時的性能影響
我有一個在典型設置上執行的網站:Linux、Apache、PHP、MySQL。
然而,它的不典型之處在於它獲得了大量的流量(每天超過 400,000 次訪問),因此,效率對我來說變得越來越重要。
我一直在尋找可以優化的東西,現在,我的注意力集中在 PHP 的會話文件上。
在目錄中不斷地讀取和創建大量會話文件
/tmp
。所以我的問題是:將會話文件儲存在
/dev/shm
(tmpfs)中以加快速度是個好主意嗎?
- 儲存在為此目的創建的記憶體支持的文件系統(如 tmpfs)中:也許。
- 儲存
/dev/shm
:不!
/dev/shm
有一個定義的含義:它旨在用作共享記憶體程序間通信子系統的備份儲存。應該使用shm_open(3)創建其中的文件,並且這些文件通常應該用作通信程序之間的共享記憶體映射。這個位置被實現為記憶體支持的文件系統這一事實是一個實現細節。如果您想在某個地方儲存臨時文件,請為此創建自己的掛載點。您應該考慮的另一個選擇是對這些會話文件使用不同的東西,例如數據庫儲存(可能是使用您自己的會話處理程序或PgSQL的 MySQL MEMORY 表)。