ホームページ  >  記事  >  バックエンド開発  >  Peep PHP コンパイル キャッシュ_PHP チュートリアル

Peep PHP コンパイル キャッシュ_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:35:33887ブラウズ

負荷製品のネックは通常、主に次の 4 つの側面にあります:
1 データベース

2 サーバー CPU

3 ハードドライブ I/O

4 ネットワーク帯域幅

これら 4 つのことを除いて。他に最適化する価値のあるものはありますか? PHPは本当に強力です。今日は、PHP のスクリプト レベルでの PHP のパフォーマンスの調整について説明します。
単一サーバー上の PHP のパフォーマンスを向上させたい場合。 「コンパイルキャッシュ」を利用することができます。 キャッシュをコンパイルすると、パフォーマンスが向上するだけでなく、PHP プログラムの容量とコードの複雑さが増加するため、サーバーのパフォーマンスも向上します。コンパイルキャッシュとは何ですか?後で言うよ。まず、PHP でスクリプト ファイルをコンパイルするために必要な 2 つの手順について説明します。

1 PHP エンジンはスクリプト ファイルを読み取り、スクリプトを解釈し、ZEND エンジンで実行可能な中間コードを生成します

2 ZEND が中間コードの 2 回目の実行を開始します

注意が必要です。最初のステップは、PHP スクリプト ファイルが要求されるたびに繰り返されるものです。 さらに、スクリプトには include()require() eval() が含まれているため、このプロセスは最初のステップを再帰的に繰り返します。どれだけの消費が伴うか想像できます。特にPHPファイルが大きい場合。では、なぜ PHP ファイルを作成するときに多すぎる行を承認しないことが推奨されるのでしょうか。
もう誰もが理解するでしょう。実際、最初のステップについては何かできるはずです。解釈ファイルの最初のステップで、解釈されたコードを共有メモリにキャッシュするとします。このスクリプトに 2 番目のリクエストがある場合は、最初のステップをスキップして、2 番目のステップに直接進むことができます。最初のステップがすでにメモリにキャッシュされているためです。
写真を見て比較してみましょう

まずはコンパイルキャッシュを使用しない場合の状況を見てみましょう

コンパイルキャッシュが使用される別のケースを見てみましょう

まあ、見ればわかります。右。コンパイル キャッシュを使用すると、多くの回り道が回避されます。 これは、コード内に include と require が多数ある場合に特に効果的です。

ここで 3 つのコンパイル キャッシュを紹介します。
1 ionCube Accelerator はオープン ソースではありません。
2 TheZendAccelerator はお金が欲しいです。貧乏です
3 APC お金もかからないのでこれがお気に入りです。効果はかなり良いです
APC
のインストールについてお話しましょう、おそらくこんな感じです。 pear 経由でインストール
#pear install apc
php.ini を変更して拡張機能を追加
extension = /path/to/apc.so

OK、とても簡単です。しかし、PHP を再度実行すると。この APC はすでに有効です。コンパイルされたコードは共有メモリにキャッシュされます。かっこいい。女が女を犯すより気持ちいい

ウィンドウの場合は、この拡張機能 http://pecl4win.php.net/list.php を探してください

APCをインストールした後も、APCのさまざまなパラメータを調整する必要があります。 もちろん、これは独自のプロジェクト環境に応じて調整する必要があります。

APC にはいくつかのパラメータがあります。自分で百度にアクセスしてください。

終わりました。

まだ終わってないよ。 私のブログ www.laoniphp.com をフォローしてください

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/508320.html技術記事一般に、負荷ネックは主に次の 4 つの側面にあります。 1 データベース 2 サーバー CPU 3 ハードディスク I/O 4 ネットワーク帯域幅 これら 4 つのゴーストに加えて。他に最適化する価値のあるものはありますか? PHP は本当に強力です...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。