PHPアクセラレータ
APC
概要
PHPの中間コードをキャッシュする事で、実行速度の向上を図るPECL拡張モジュール
中間コードだけでなく、ユーザデータのキャッシュも可能で、ローカルのKVSとしても使用可能。
(デメリットとして、サーバ間で異なるデータをキャッシュしている時間帯が発生し、
アクセスするサーバによって、表示が異なるという事が起こりえる。)
設定
- extension = apc.so
apc.shm_size
個々の共有メモリセグメントの大きさ(MB)
apc.stat
- On: 実行時に毎回、ソースコードファイルの更新確認をする。更新有りの時は、新バージョンをキャッシュする。
- Off: 更新確認をしないので、パフォーマンスがあがる
etc..
備考
OPcache
概要
APCと同様。ただし、ユーザデータのキャッシュはサポートされていない。
PHP 5.5.0以降では、PHPにバンドルされている。
PHP 5.2, 5.3, 5.4には、PECLで提供されている。
- PHP Manual: http://www.php.net/manual/ja/book.opcache.php
- PECL: http://pecl.php.net/package/ZendOpcache
- Source Code: https://github.com/zendtech/ZendOptimizerPlus
設定
- zend_extension = /full/path/to/opcache.so
備考
推奨設定が、マニュアルに記載されているので、要確認。
ステータス確認ツール
APCのように、付属していないので
https://github.com/rlerdorf/opcache-status
参考資料
APCu
概要
OPcacheで提供されていないユーザデータキャッシュを提供するエクステンション
APCから中間コードキャッシュを取り除いたもの。
PHP5.5以降では、APCではなく、OPcache + APCu を使うことになりそう。
備考
設定や関数のインタフェースは、APCと変わらない
yac
APCのメンテナーの方が、開発しているユーザデータキャッシュを提供するエクステンション
また、「Experimental」との事。