負荷品質の問題は通常、次の 4 つの側面に分類されます。
1 データベース
2 サーバー CPU
3 ハードディスク I/O
4 ネットワーク帯域幅
これら 4 つのゴーストに加えて。他に最適化する価値のあるものはありますか? PHPは本当に強力です。今日は、PHP のスクリプト レベルでの PHP のパフォーマンスの調整について説明します。
単一サーバー上の PHP のパフォーマンスを向上させたい場合。 「コンパイルキャッシュ」を利用することができます。 コンパイルされたキャッシュはパフォーマンスを向上させるだけでなく、PHP プログラムの容量とコードの複雑さが増すにつれてサーバーのパフォーマンスも向上します。コンパイルキャッシュとは何ですか?後で教えます。まず、スクリプト ファイルをコンパイルするために PHP が実行する必要がある 2 つの手順について説明します。
1. PHP エンジンはスクリプト ファイルを読み取り、スクリプトを解釈し、ZEND エンジンで実行可能な中間コードを生成します
。2. 2 番目の手順に注意する必要があります。 ZEND が中間コードの実行を開始する時刻
。最初のステップは、PHP スクリプト ファイルが要求されるたびに繰り返されるものです。 さらに、スクリプトには include()require() eval() が含まれているため、このプロセスは最初のステップを再帰的に繰り返します。どれだけの消費が伴うか想像できるだろう。特にPHPファイルが大きい場合。では、なぜ PHP ファイルを作成するときに多すぎる行を承認しないことが推奨されるのでしょうか。
この時点で誰もが理解するでしょう。実際、最初のステップについては何かできるはずです。解釈ファイルの最初のステップで、解釈されたコードを共有メモリにキャッシュするとします。このスクリプトに 2 番目のリクエストがある場合は、最初のステップをスキップして、2 番目のステップに直接進むことができます。最初のステップがすでにメモリにキャッシュされているためです。
まずはコンパイルキャッシュを使用していない場合の状況を見て、
次に
コンパイルキャッシュを使用している場合の状況を見てみ
ましょう。右。コンパイル キャッシュを使用すると、多くの回り道が回避されます。 これは、コード内に include と require が多数ある場合に特に効果的です。
次に、3 つのコンパイル キャッシュを紹介します。
1 ionCube Accelerator はオープンソースではありません。
2ZendAccelerator はお金が欲しいです。私は貧しいです
3 APC これはお金がかからないので私のお気に入りです。効果は非常に優れています。APC について話しましょう。
インストールはおそらくこんな感じ。 Pear 経由でインストールする
#pear インストール APC
php.iniを変更して拡張機能を追加する
extension = /path/to/apc.so
OK それはとても簡単です。しかし、PHP を再度実行すると。 この APC はすでに有効です。コンパイルされたコードは共有メモリにキャッシュされます。かっこいい。
ウィンドウの場合は、この拡張子http://pecl4win.php.net/list.php を探してください。APC
がインストールされた後は、APC のさまざまなパラメータを調整する必要があります
。
。 もちろん、これは独自のプロジェクト環境に応じて調整する必要があります。
APC にはいくつかのパラメータがあります。自分で百度にアクセスしてください。
終わりました。
まだ終わっていないのです。 私のブログwww.laoniphp.com をフォローしてください