PHP文件緩存的性能測試 性能測試工具
前言:
在開發MooPHP的過程中,為了尋找更為高效的緩存方式,對兩種最常用的緩存方式進行了測試。
PHP常用緩存方式:
第一種,把需要緩存的數據進行處理,形成PHP可以直接執行的文件。在需要緩存數據的時候,通過include方式引入,并應用。
第二種,把需要的數據通過serialize函數序列化后直接保存到文件。在需要應用緩存數據的時候,通過反序列化讀入文件內容并復制給需要的變量,然后應用。
測試效果:
通過測試我們發現,第二種也就是serialize緩存數據的方式更加高效。
原因分析:
include方式讀取緩存的時候,PHP需要執行幾個過程
1。讀取文件
2。解析所Include的文件
3。執行,給變量賦值
而serialize序列化方式讀取緩存的時候:
1。讀取數據
2。反序列化數據內容
3。給變量賦值
從以上內容對比的話,可以是由于解析PHP文件內的數組需要的時間逾越unserialize反序列化數組的時間。如果你有興趣可以檢討《PHP filesystem相關函數和include require的性能效率研究》。
測試文件代碼:
下載地址:MooPHP-CacheTest。zip(右鍵另存為)
原創地址:http:÷÷www。ccvita。com÷311。html 有新的研究心得會在這里更新。
CacheTest_IncludeFile。php
< ?php
$t1 = gettimeofday();
for ($i = 0; $i < 10000; $i++)【
include(“CacheTest_IncludeData。php“);
】
$t2 = gettimeofday();
echo ($t2【“sec“】 - $t1【“sec“】) × 1000 + ($t2【“usec“】 - $t1【“usec“】) ÷ 1000 。 “、n“;
文章來源于領測軟件測試網 http://www.kjueaiud.com/