はじめに
PHP のパフォーマンスの問題に関して最も議論されているのは __autoload() メソッドであり、このメソッドがパフォーマンスに大きな影響を与えると多くの人が言及しています。オペコードが __autoload() メソッドにも影響する可能性があるという人もいたので、この 2 点についてテストしてみました。
最終的に、__autoload メソッドはパフォーマンスに大きな影響を与えないことがわかりました。
環境
PHP:5.3.9 - fastcgi モードで起動します
Nginx:1.1.12
eaccelerator:0.9.6.1
。
最終的に、__autoload メソッドはパフォーマンスに大きな影響を与えないことがわかりました。
環境
PHP: 5.3.9 - fastcgi モードで開始
Nginx: 1.1.12
eaccelerator: 0.9.6.1
スクリーンショット:
起動インターフェース:
eAccelerator (php.ini ファイル内) 構成:
ファイル構造: (各テスト ファイルは 6000 行を超えるコードを含むファイルです)
テスト: eAccelerator キャッシュを使用したテスト
テスト コード: __autoload によってロード
eAccelerator のキャッシュを使用します
__autoload によるテスト ‐‐‐‐‐写真 1
得られた結果ブラウザで更新すると、次のようになります:
合計時間:0.10401391983032
合計時間:0.10252094268799
合計時間:0.095267057418823
合計時間:0.10013008117676
合計時間:0.0968420 50552368
合計時間:0.097998142242432
合計時間:0.10348510742188
合計時間:0.096648931503296
テスト: __autoload() なし
852106 09436
合計時間:0.10154414176941
合計時間:0.097845792770386
合計時間:0.099545001983643
合計時間:0.10166597366333
最終結果: 自動ロード方法に明らかなパフォーマンスの低下はありません
テスト: テストのために eAccelerator キャッシュをキャンセルします
図 1 のテスト結果 合計時間:0.24992394447327
時間:0.25681900978088
合計時間:0.25327301025391
合計時間:0.22580695152283
合計時間:0.22656512260437
合計時間:0.22530484199524
合計時間:0。 23080611228943
図 2 のテスト結果
合計時間:0.23054909706116
合計時間:0.22633790969849
合計時間:0.23442888259888
合計時間:0.2350070476532
合計時間:0.22897601127625
合計時間:0.23207712173 462
__autoload() メソッドは依然としてパフォーマンスに明らかな影響を与えません。
概要
上記 2 セットの実験を通じて、次のことが結論付けられます:
1>__autoload メソッドには明らかなパフォーマンスの低下はありません。したがって、ためらわずに __autoload メソッドを使用してください。
2>オペコードはコードに比較的大きな影響を与えます。オペコードを使用すると、PHP コードの実行速度が 2 倍近く向上することがわかります。
上記では、gloryglorymanunited の PHP __autoload メソッドを紹介していますが、実際にパフォーマンスに影響しますか? これには、gloryglorymanunited の内容が含まれており、PHP チュートリアルに興味のある友人に役立つことを願っています。