最終發(fā)現(xiàn)__autoload方法在性能方面的影響不是很大的。
環(huán)境
PHP:5.3.9 ——以fastcgi模式啟動(dòng)
Nginx:1.1.12
eaccelerator:0.9.6.1
截圖:
啟動(dòng)界面:
eAccelerator(在php.ini文件中)配置情況:
文件結(jié)構(gòu):(每一個(gè)Test文件都是6000多行代碼的文件)
測(cè)試:帶著eAccelerator緩存進(jìn)行測(cè)試
測(cè)試代碼:經(jīng)過(guò)__autoload加載
圖1
我在瀏覽器里通過(guò)刷新得到的結(jié)果分別如下:
Total Time:0.10401391983032
Total Time:0.10252094268799
Total Time:0.095267057418823
Total Time:0.10013008117676
Total Time:0.096842050552368
Total Time:0.097998142242432
Total Time:0.10348510742188
Total Time:0.096648931503296
測(cè)試:不經(jīng)過(guò)__autoload()
圖2
測(cè)試結(jié)果——通過(guò)刷瀏覽器
Total Time:0.10309100151062
Total Time:0.10285210609436
Total Time:0.10154414176941
Total Time:0.097845792770386
Total Time:0.099545001983643
Total Time:0.10166597366333
最終看到的結(jié)果:autoload方法沒(méi)有出現(xiàn)明顯的性能下降
測(cè)試:取消eAccelerator緩存進(jìn)行測(cè)試
圖1的測(cè)試結(jié)果
Total Time:0.24992394447327
Total Time:0.25681900978088
Total Time:0.25327301025391
Total Time:0.22580695152283
Total Time:0.22656512260437
Total Time:0.22530484199524
Total Time:0.23080611228943
圖2的測(cè)試結(jié)果
Total Time:0.23054909706116
Total Time:0.22633790969849
Total Time:0.23442888259888
Total Time:0.2350070476532
Total Time:0.22897601127625
Total Time:0.23207712173462
__autoload()方法在性能上還是沒(méi)有明顯的影響。
總結(jié)
通過(guò)上面的兩組實(shí)驗(yàn)得出:
1>__autoload方法沒(méi)有明顯的性能損失。所以大家不要介于使用__autoload方法。
2>opcode對(duì)代碼的影響是比較大的,明顯使用opcode的時(shí)候,php代碼執(zhí)行速度提高了將近2倍多。
新聞熱點(diǎn)
疑難解答