2010-11-29 4 views
0

mpm-workerとmod_fcgidでApache Webサーバーを使用しています。phpオペコードキャッシングを使用したmod_fcgid

私はopcodeキャッシングを利用できないmod_fcgidについて読んでいます。

http://www.brandonturner.net/blog/2009/07/fastcgi_with_php_opcode_cache/

APCキャッシュモジュールは、私のPHPの設定で有効になっているようです。

私のスポーンされたPHPコードがでないかどうか分かりません。が共有されています。

APCを削除する必要がありますか?オーバーヘッドはありますか?

答えて

2

私のスポーンされたPHPコードが決して共有されないかどうかわかりません。

this questionが参考になる場合があります。

APCを削除しますか?オーバーヘッドはありますか?

は、オーバーヘッド用として、あなたは n個プロセスを持っている場合、あなたは n個キャッシュを持っています。 スペースは効率的ではありませんが、それでも減らすことができます CPUサイクルtho。

+0

+1、私よりも良い答え:) –

1

opcodeキャッシングを使用しますが、キャッシュはPHPプロセス間で共有されないため、プロセスごとにキャッシュされます。それは間違いなくAPCを使う価値があります。

記事を読んで、私はfgcidとfastcgiに関して、ここに$ 0.2cを投げます。 Fastcgiを使用し、PHPプロセスで複数の子を生成させるという、この記事で説明したようなソリューションを最初に導入しました。これは、キャッシュを共有する際の問題を回避するための試みでした。

しかし、このソリューションでは定期的に完全なロックアップを経験しました。 PHPプロセスがハングしてしまい、fastcgiがそれを検出することができなくなり、すべてのユーザーのためにアプリケーション全体が停止してしまいます。

私たちは再びfcgidに切り替わり、ロックアップは完全に停止しました。プロセスあたりのキャッシュにはオーバーヘッドがありますが、fcgidは必要なときにのみ新しいPHPプロセスを生成するため、実際にはオーバーヘッドは最小限に抑えられます。

オペコードキャッシュだけでなく、APCでユーザーキャッシュを使用しているため、トレードオフは間違いなく価値があります(キャッシュされたデータはサーバーでの作業が少なく、キャッシュされたオペコードはサーバーでの作業が少なくなるため)わずかなメモリ使用ペナルティのために確実に削減されます。

関連する問題