建立乙個tmpfs
講php檔案放到該目錄下,然後對比php執行效果,用xhprof獲取執行資料
使用tmpfs
關apc
total incl. wall time (microsec): 34
total incl. cpu (microsecs): 26
total incl. memuse (bytes): 2311
total incl. peakmemuse (bytes):2304
開apc
total incl. wall time (microsec): 26
total incl. cpu (microsecs): 16
total incl. memuse (bytes): 786
total incl. peakmemuse (bytes):798
不用tmpfs
關apc
total incl. wall time (microsec): 33
total incl. cpu (microsecs): 26
total incl. memuse (bytes): 2310
total incl. peakmemuse (bytes):2304
開apc
total incl. wall time (microsec): 22
total incl. cpu (microsecs): 16
total incl. memuse (bytes): 786
total incl. peakmemuse (bytes):798
得出結果,在唯讀環境中,是否啟用tmpfs區別不大,應該和linux的記憶體管理方式有關
分別進行php讀取tmpfs和普通目錄的檔案測試,
迴圈100w次file_get_contents:
在tmpfs下的檔案
用時28s
在普通目錄下的檔案
用時29s
100w次file_exists:
tmpfs下
19s普通目錄
20s100w次file_put_contents,幾十位元組
在tmpfs下的檔案
用時41s
在普通目錄下的檔案
用時415s
100w次error_log寫入指定檔案,幾十位元組
在tmpfs下的檔案
用時29s
在普通目錄下的檔案
用時36s
結論,tmpfs在寫入資料時由於是記憶體操作,會非常快速度
發現file_put_contents和error_log在迴圈呼叫寫入檔案的時候,效能差距非常大。。。
看了下兩個函式的原始碼,都是利用 php_stream_write實現檔案寫入,但file_put_contents的功能更多,原始碼裡有對鎖,stream,資料型別的不同處理,可能是這些原因導致效能比error_log慢。
使用tmpfs快取檔案提高效能
zt 使用tmpfs快取檔案提高效能 夜隼 使用tmpfs快取檔案提高效能 tmpfs是一種虛擬記憶體檔案系統,它最大的特點就是它的儲存空間在vm virtual memory 裡面。linux系統中vm主要由rm real memory 和swap組成,因此tmpfs最大的儲存空間可達 the s...
效能測試 效能測試步驟
針對此次庫內作業效能測試,梳理一下期間的工作流程 梳理已有的介面指令碼,確認需要做效能測試的幾個介面,即使用率高,對效能有要求的幾個主要介面。結合頁面的操作,和確認的介面,梳理具體的業務邏輯 同時,請開發人員部署了測試環境。測試環境的伺服器指標,盡量和生產環境一致。部署的時候,負載均衡等情況也盡量和...
效能測試之前端效能測試
本次總結總共分為以下部分 1.如何衡量乙個系統是否要做壓測 2.壓測的準備過程 3.壓測工具選擇 4.壓測資料以及報告結果相關 1.如何衡量乙個系統是否要做壓測 首先需要衡量乙個系統是否需要壓測,從以下角度考慮 從兩個角度進行分析 a.業務角度 明確系統是對內使用還是對外使用,使用人數是多少,如果使...