PHPアクセラレータで一番高速なのはどれか?

「PHPアクセラレータ」というのは何をしているのかというと、実行されたPHPスクリプトの中間形式にコンパイルされたデータをキャッシュディレクトリに保存することで、以後同じファイルに対してアクセスがあった時に、そのキャッシュファイルを利用することで高速化するわけです。
で、この「PHPアクセラレータ」の種類がいろいろあるということはそれぞれ一長一短なワケですが、とりあえずあっちこっちのネット上における各種試用レポートなどを総合すると「APC (Alternative PHP Cache)、eAccelerator、XCacheのうちのどれか」が無難なようです。ただ、ベンチマーク結果から言うと、どうも最近出てきた「XCache」が気になるかな~という感じ。
詳細は以下の通り。
その1:APC (Alternative PHP Cache)
インストール方法などは以下が詳しい。
Do You PHP? - APC(Alternative PHP Cache)のインストール手順
APC で PHP を高速化
[ロ]APCを使ってPHPを高速化する。 - LOWTECH.NE.JP Weblog
RPM版は以下にあります。
PHP RPMs: APC
設定に関しては以下に詳細な説明があります。
Alternative PHP Cache (APC)
実際にどれぐらい高速化されるかというと、新潟中越地震 被災者救援本部@2ch Wikiにおいて、導入前のLoad Average 最大値が127.03、平均値が37.31だったものが、導入後にはLoad Average 最大値が15.33、平均値が2.10まで下がったとのこと。劇的な効果ですね……。
その2:eAccelerator
「Turck MMCache」というものが前身。インストール方法などは以下が詳しい。
Devel/PHP/Accelerator/eAccelerator - cubic9.com
eAcceleratorのインストール
設定項目は以下が詳しい。
PHP:eAccelerator で PHP 高速化 - Y-110's Wiki
Windows用もこちらに置いてあります。
Windows用eAccelerator
その3:XCache
これは日本ではまだ有名ではないのですが、上記2つの有名どころと大差ない感じで開発が進んでおり、安定性重視で開発されているとのこと。
管理画面はこんな感じ。
XCache 1.2-dev Administration
ちゃんとビューワーも付いてます。
XCache PHP Code Coverage Viewer
FreeBSD、openSUSE、Gentoo、Debian、Windows用には最初から用意されており、ソースからのインストールも可能。
ほかにはZend Optimizer、Zend Platform、ionCube PHP Acceleratorなどがありますが、どれも最初の3つと比べるとあまり「おすすめできない」レベルとのこと。
ここで出てきたすべてのPHPアクセラレータのベンチマーク結果は以下の通り。
PHP Bytecode Cacher Review October 2006
テスト内容などの詳細は以下。
[Update] PHP on Fire: Five Opcode Caches compared. at WWWorker - Sascha A. Carlin
XCacheとAPCに軍配が上がっているようです。GIGAZINEのサーバもどっちかに乗り換えよう……。RHEL使ってるから、RPMで用意されているAPCの方が無難かな…?
・関連記事
PHPとデータベースに関する5つの問題、とその解決法 - GIGAZINE
PHPでフラッシュのグラフを作る「PHP/SWF Charts」 - GIGAZINE
PHPのスキルを上げる100以上のプレゼンテーション資料 - GIGAZINE
世界のPHPテンプレートエンジン、トップ25 - GIGAZINE
・関連コンテンツ
in ソフトウェア, ネットサービス, Posted by darkhorse_log
You can read the machine translated English article Which is the fastest PHP accelerator?….