PHP __autoload()方法真的影響性能嗎?
更新時(shí)間:2012年03月30日 00:14:30 作者:
對(duì)于php性能問題,議論最多的就是__autoload()方法,很多人提到這個(gè)方法非常影響性能。還有人說opcode也能影響到__autoload()方法,所以針對(duì)這兩點(diǎn)我做了個(gè)測(cè)試
介紹
對(duì)于php性能問題,議論最多的就是__autoload()方法,很多人提到這個(gè)方法非常影響性能。還有人說opcode也能影響到__autoload()方法,所以針對(duì)這兩點(diǎn)我做了個(gè)測(cè)試。
最終發(fā)現(xiàn)__autoload方法在性能方面的影響不是很大的。
環(huán)境
PHP:5.3.9 ——以fastcgi模式啟動(dòng)
Nginx:1.1.12
eaccelerator:0.9.6.1
。
對(duì)于php性能問題,議論最多的就是__autoload()方法,很多人提到這個(gè)方法非常影響性能。還有人說opcode也能影響到__autoload()方法,所以針對(duì)這兩點(diǎn)我做了個(gè)測(cè)試。
最終發(fā)現(xiàn)__autoload方法在性能方面的影響不是很大的。
環(huán)境
PHP:5.3.9 ——以fastcgi模式啟動(dòng)
Nginx:1.1.12
eaccelerator:0.9.6.1
。
最終發(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)過__autoload加載
圖1
我在瀏覽器里通過刷新得到的結(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)過__autoload()
圖2
測(cè)試結(jié)果——通過刷瀏覽器
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方法沒有出現(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()方法在性能上還是沒有明顯的影響。
總結(jié)
通過上面的兩組實(shí)驗(yàn)得出:
1>__autoload方法沒有明顯的性能損失。所以大家不要介于使用__autoload方法。
2>opcode對(duì)代碼的影響是比較大的,明顯使用opcode的時(shí)候,php代碼執(zhí)行速度提高了將近2倍多。
您可能感興趣的文章:
- PHP __autoload函數(shù)(自動(dòng)載入類文件)的使用方法
- CodeIgniter配置之a(chǎn)utoload.php自動(dòng)加載用法分析
- PHP之a(chǎn)utoload運(yùn)行機(jī)制實(shí)例分析
- PHP中spl_autoload_register()和__autoload()區(qū)別分析
- php自動(dòng)加載autoload機(jī)制示例分享
- php中autoload的用法總結(jié)
- 說說PHP的autoLoad自動(dòng)加載機(jī)制
- PHP的autoload機(jī)制的實(shí)現(xiàn)解析
- php _autoload自動(dòng)加載類與機(jī)制分析
- PHP中__autoload和Smarty沖突的簡(jiǎn)單解決方法
- php自動(dòng)載入類用法實(shí)例分析
相關(guān)文章
用PHP中的 == 運(yùn)算符進(jìn)行字符串比較
用PHP中的 == 運(yùn)算符進(jìn)行字符串比較...2006-11-11php+ajax實(shí)時(shí)輸入自動(dòng)搜索匹配的方法
這篇文章主要介紹了php+ajax實(shí)時(shí)輸入自動(dòng)搜索匹配的方法,實(shí)例分析了兩種實(shí)現(xiàn)方法,是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12PHP數(shù)組遞歸排序?qū)崿F(xiàn)方法示例
這篇文章主要介紹了PHP數(shù)組遞歸排序?qū)崿F(xiàn)方法,結(jié)合實(shí)例形式分析了php基于遞歸算法針對(duì)特定key對(duì)數(shù)組進(jìn)行排序的相關(guān)操作技巧,需要的朋友可以參考下2018-03-03PHP實(shí)現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法【文字,圖片,圖文】
這篇文章主要介紹了PHP實(shí)現(xiàn)微信模擬登陸并給用戶發(fā)送消息的方法,可實(shí)現(xiàn)發(fā)送文字、圖片及圖文的功能,涉及php針對(duì)微信接口的相關(guān)操作技巧,需要的朋友可以參考下2017-06-06php實(shí)現(xiàn)mysql數(shù)據(jù)庫(kù)連接操作及用戶管理
這篇文章主要介紹了php實(shí)現(xiàn)mysql數(shù)據(jù)庫(kù)連接操作及用戶管理的相關(guān)代碼,需要的朋友可以參考下2015-11-11