ウェブアプリ

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 OptimizerZend PlatformionCube 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の方が無難かな…?

この記事のタイトルとURLをコピーする

・関連記事
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 here.