PHPアクセラレータのリスト
これはPHP アクセラレータのリストです。
代替 PHP キャッシュ (APC)
Alternative PHP Cacheは、PHPバイトコードコンパイラの出力を共有メモリにキャッシュする、無料かつオープンな(PHPライセンス)フレームワークです。これにより、後続のリクエストにおける解析とディスクI/Oのオーバーヘッドが削減されます。また、ユーザーデータ用の共有メモリキャッシュも備えています。Drupalのような大規模なソースコードベースを持つアプリケーションでは、ページ生成速度が3倍向上します。[ 1 ]
これはFacebookで使用されており、Facebook自身を含む多くの貢献者のおかげで成熟したコードベースを持っています。[ 2 ]
APC は当初、PHP 6 までに PHP コアに組み込む予定でした。[ 3 ]複数のアクセラレータ プロジェクトが望ましいと考えられていましたが、[ 4 ]その後、焦点は Optimizer Plus に移り、[ 5 ] [ 6 ]、その後、PHP 5.5 のコア ディストリビューションに含まれる Zend OPcache に移りました。[ 7 ] 2013 年 3 月から、APCu (APC User Cache) のベータ バージョンが利用可能になりました。このバージョンでは、すべてのオペコード キャッシュ機能が削除され、使い慣れた APC API を使用して共有メモリ内のユーザー キャッシュがサポートされています。[ 8 ]
- ウェブサイト: http://pecl.php.net/package/APC
- PHP バージョン: PHP 5.4 (3.1.13 - ベータリリース) までのすべての PHP バージョンで動作します
- 最新ベータ版: 3.1.13 (2012-09-03)
- 最新の安定バージョン: 3.1.9 (2011-05-14)
- ステータス:休止状態、潜在的に終了 (2012 年 9 月以降、新規リリースなし)、APCu はまだ進行中。
- ダウンロード リンク: http://pecl.php.net/package/APC (ソース コード、最新のコンパイルに必要)
- 公式インストール ヘルプ: http://php.net/apc.setupおよびhttp://php.net/apc.installation (拡張機能は、使用する PHP バージョンのソースに対してコンパイルする必要があります。Windows でのビルド手順も含まれています)
eアクセラレーター
eAcceleratorは、2004年12月にTurck MMCacheプロジェクトのフォークとして誕生しました。Turck MMCacheはDmitry Stogov氏によって開発され、eAcceleratorのコードの多くは現在も彼の成果に基づいています。eAcceleratorにはPHPエンコーダーとローダーも含まれていましたが、開発スタッフは2006年12月以降、エンコーダーの開発を中止し、この機能も削除しました。
- ウェブサイト: http://eaccelerator.net/
- PHPバージョン: PHP 4およびPHP 5.4を含むすべてのスレッドセーフリリースをサポートします。古いリリースでは、エンコーダーはPHP 4.xxブランチのPHPバージョンでのみ動作します。eAcceleratorはPHPのその他のバージョンでは動作しません。eAcceleratorはPHPのスレッドセーフバージョンでのみ使用できます。
- 最新の安定バージョン: 0.9.6.1 (2010-05-31)
- ステータス:休止中、おそらく停止中(2012年7月以降、新規リリースなし)。最後の公開アクティビティは、Hans RakersによるGitHubへの移行です。マスターブランチはPHP 5.4をサポートしています。
- Githubリポジトリ
- ダウンロード リンク: (最新バージョンを探す) http://eaccelerator.net/、SourceForgeのダウンロード ページ
- 公式インストールヘルプ: https://eaccelerator.net/wiki/InstallFromSource
ionCube PHP アクセラレータ
2001年に開始されたionCube PHP Accelerator (PHPA)は、商用のZend Cache製品と競合する最初の無料で利用できるPHPアクセラレータでした。ionCube Ltd.が設立される前、PHPのパフォーマンスが他の一般的なWebプログラミング言語と比較して見劣りすると見なされていた時代に作成され、PHPAはパフォーマンスの点でPHPが他の言語と競合できることを示しました。PHPAの作者は、オープンソースのライバルが商用の代替手段に与える影響についてZend TechnologiesのZeev Suraski氏が初期に提起した懸念に応えて、プロジェクトをクローズドソースのままにすることを選択しましたが、PHPAはさまざまなプラットフォームで利用できるため、小規模なサイトからYahoo!まで世界中で広く採用されました。また、PHPAは、パフォーマンスの低下を招く各リクエストのデシリアライズの代わりに、PHPAとZend Cacheが採用していた共有メモリ実行手法を使用するようにAPCを再開発するきっかけにもなりました。
タークMMキャッシュ
Turck MMCacheは現在廃止されています。eAcceleratorはTurck MMCache のフォークです。
Xキャッシュ
XCacheは高速で安定したPHPオペコードキャッシャーで、テスト済みであり、現在、高負荷環境の運用サーバーで稼働しています。LinuxとFreeBSDでテストされており、Windowsではスレッドセーフ版と非スレッドセーフ版のPHPをサポートしています。この比較的新しいオペコードキャッシングソフトウェアは、Lighttpdの開発元であるmOoによって開発され、当時の既存ソリューションのいくつかの制限を克服しました。例えば、新しいPHPバージョンが登場してもすぐに使用できるなどです。
- ウェブサイト: https://web.archive.org/web/20120224193029/http://xcache.lighttpd.net/
- PHP バージョン: PHP 5.6 まで完全サポート
- 最新の安定バージョン: 3.2.0 (2014年9月18日リリース)
- ステータス:休止状態、潜在的に死んでいる(2014年以降リリースなし)
- ダウンロードリンク: http://xcache.lighttpd.net/wiki/ReleaseArchive
- 公式インストールヘルプ: http://xcache.lighttpd.net/wiki/InstallFromSource
ヌスフィア PhpExpress
PhpExpressは、Nu-Coder(商用)エンコードされたPHPファイルとプレーンなPHPファイルの両方をPHPエンジンに直接読み込む無料のPHPオペコードキャッシュです。これにより、読み込み時間を短縮し、PHPアプリケーションのパフォーマンスを向上させます。Windows、Linux、FreeBSD、NetBSD、Mac OS X、Solarisで利用可能です。
- ダウンロードリンク: http://www.nusphere.ru/files/download/NuSphere-PhpExpress-3.0.zip
- 公式インストールヘルプ: http://www.nusphere.com/kb/phpexpressmanual/part1.htm#2
- ウェブサイト: http://www.nusphere.com/products/phpexpress.htm
- PHPバージョン: PHP 4.3から5.3
- 最新の安定バージョン: 3.1
- ステータス:おそらく停止中(2012年1月以降、新しいリリースはなく、問い合わせにも応答していません)。最後にサポートされたPHPのバージョンは5.3です。
Zend OPcache (例: Zend Optimizer+)
Zend OPcache [ 9 ]は、PHP言語自体にバンドルされているZend ServerおよびZend Server Community Editionのオープンソース[ 10 ]コンポーネントです。 [ 7 ] Zend OPcacheは、オペコードのキャッシュと最適化によりPHPの実行を高速化します。コンパイル済みのスクリプトのバイトコードを共有メモリに格納します。バージョン7.0以降では、コンパイル済みのスクリプトのバイトコードをディスクに格納できます。これにより、ディスクからコードを読み取り、将来のアクセス時にコンパイルする段階が排除されます。さらにパフォーマンスを向上させるために、格納されたバイトコードはより高速に実行できるように最適化されています。Zend Optimizerとは異なり、Zend OPcacheはZend Guardでエンコードされたファイルをロードしません。Zendは、エンコードされたアプリケーションをZend ServerおよびZend Server Community Editionでロードするために、Zend Guard Loaderという別のコンポーネントを提供しています。
Zend Optimizer+ は、2013 年 3 月中旬に Zend OPcache に 名前が変更されました。
PHP 5.5以降ではZend OPcacheがPHPに統合され、同梱されています。[ 7 ]
- ウェブサイト: http://pecl.php.net/package/ZendOpcache
- ソース: https://github.com/zend-dev/ZendOptimizerPlus/
- PHP バージョン: PHP 5.2 以降を完全サポート
- 最新の安定バージョン: 7.1.6
- ステータス:アクティブにメンテナンス中
Zendプラットフォーム
Zend Platform(旧称Zend Cache、その後Zend Accelerator)は、商用Webアプリケーションサーバー製品です。単なるPHPアクセラレータにとどまらず、包括的なパフォーマンス機能を備えています。コードキャッシュ/アクセラレーション、データキャッシュ、コンテンツ(HTML出力)キャッシュ、ダウンロード最適化、オフライン(非同期)処理機能など、多くの機能を備えており、ほとんどのPHPアプリケーションで大幅なパフォーマンス向上を実現します。また、チューニングとデバッグを支援する詳細なPHP監視と根本原因分析サポート、HA(高可用性)ニーズに対応するセッションフェイルオーバーサポート、Java統合を含むその他の統合機能も備えています。
Zend PlatformとZend Coreは現在「サポート終了」状態にあり[ 11 ]、Zend Serverに置き換えられました。[ 12 ]
PHP 用 Windows キャッシュ拡張機能
Windows版PHP向けにMicrosoftが開発した、無料のオープンソース(New BSDライセンス)PHPアクセラレータです。この拡張機能には、PHPオペコードキャッシュ、ファイルキャッシュ、ファイルパス解決キャッシュ、オブジェクト/セッションキャッシュ、ファイル変更通知、ロック/ロック解除APIが含まれています。これらのキャッシュを組み合わせることで、WindowsでホストされるPHPアプリケーションのパフォーマンスが大幅に向上します。この拡張機能は主に、インターネットインフォメーションサービス(IIS)およびFastCGIプロトコル経由の非スレッドセーフビルドのPHPで使用されます。
- ウェブサイト: http://www.iis.net/expand/WinCacheForPHP
- PHP バージョン: PHP 5.2 (VC6 NTS)、5.3 (VC9 NTS)、5.4 (VC9 NTS)、5.5 (VC11 NTS)、5.6、7.0 で動作、ソースコードも入手可能
- 最新の安定バージョン: 2.0.0.8 (2016-11-09)
- ステータス:リリース済み、積極的に開発中。
- ダウンロードリンク(ソース):http://pecl.php.net/package/WinCache
- ダウンロード リンク (バイナリ): http://www.iis.net/expand/WinCacheForPhp
- ヘルプと API ドキュメントhttp://www.php.net/wincache
機能の比較
| 名前 | 可用性 | オペコードキャッシュ | ファイルキャッシュ | ファイルパスキャッシュを解決する | オブジェクト/セッションキャッシュ | 最適化 | メモリにキャッシュ | ソースエンコーディング |
|---|---|---|---|---|---|---|---|---|
| 装甲兵員輸送車 | 製造中止 | はい | はい | ? | はい | はい | はい | いいえ |
| eアクセラレーター | 製造中止 | はい | はい | ? | ? | ? | はい | ? |
| PHPアクセラレータ(PHPA) | 製造中止 | はい | はい | ? | いいえ | はい | はい | いいえ |
| ターク MMキャッシュ | 製造中止 | ? | ? | ? | ? | ? | ? | ? |
| Xキャッシュ | 製造中止 | はい | はい | ? | はい | いいえ[ 13 ] | はい | ? |
| ヌスフィア PhpExpress | 製造中止 | はい | ? | ? | ? | ? | ? | ? |
| Zend OPcache (例: Zend Optimizer+) | 維持 | はい | はい | ? | いいえ | はい | はい | いいえ |
| Zendプラットフォーム | 製造中止 | ? | ? | ? | ? | ? | ? | ? |
| Windows キャッシュ | 維持 | はい | はい | はい | はい | ? | はい | ? |
互換性チャート
| PHPアクセラレータ | 可用性 | OS | ウェブサーバー | PHPバージョン | |||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ウィンドウズ | リナックス | フリーBSD | macOS | ネットBSD | ソラリス | IIS | アパッチ | エングス | 5.2 | 5.3 | 5.4 | 5.5 | 5.6 | 7.0 | 7.1 | 7.2 | 7.3 | 7.4 | 8.0から8.4 | ||
| 装甲兵員輸送車 | 製造中止 | はい | はい | はい | はい | ? | はい | ? | はい | はい | はい | はい | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| eアクセラレーター | 製造中止 | はい | はい | はい | ? | ? | はい | はい | はい | はい | はい | はい | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| イオンキューブ | 製造中止 | はい | はい | はい | はい | ? | はい | ? | はい | ? | はい | はい | はい | はい | はい | はい | はい | はい | いいえ | いいえ | いいえ |
| ターク MMキャッシュ | 製造中止 | ? | ? | ? | ? | ? | ? | ? | ? | ? | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| Xキャッシュ | 製造中止 | はい | はい | はい | はい | ? | ? | ? | はい | はい | はい | はい | はい | はい | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| ヌスフィア PhpExpress | 製造中止 | はい | はい | はい | はい | はい | はい | ? | ? | ? | はい | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| Zend OPcache (例: Zend Optimizer+) | 維持 | はい | はい | はい | はい | ? | いいえ | はい | はい | はい | はい | はい | はい | はい | はい | はい | はい | はい | はい | はい | はい |
| Zendプラットフォーム[ 14 ] | 製造中止 | いいえ | はい | いいえ | いいえ | いいえ | はい | いいえ | はい | いいえ | はい | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ | いいえ |
| Windowsキャッシュ[ 15 ] | 維持 | はい | いいえ | いいえ | いいえ | いいえ | いいえ | はい | ? | ? | はい | はい | はい | はい | はい | はい | はい | いいえ | いいえ | いいえ | いいえ |
その他の製品
Zend Guard Loader(旧称Zend Optimizer)は、Zend Technologiesが提供する無料のPHP拡張機能で、 Zend Guardによってエンコード・難読化されたファイルを読み込みます。[ 16 ] PHPのバイトコードを最適化したりキャッシュしたりすることはありません。
参照
- PHP 用ヒップホップ
- HHVM(ヒップホップ仮想マシン)
参考文献
- ^ 「PHPオペコードキャッシュを使用したDrupalのベンチマーク:APC、eAccelerator、XCacheの比較 | 2bits.com, Inc. - Drupalパフォーマンス最適化、開発、マネージドホスティング、カスタマイズ、コンサルティング」 2bits.com . 2014年2月14日閲覧。
- ^ 「PHPとFacebook」 . Blog.facebook.com . 2014年2月14日閲覧。
- ^ "「[PHP-DEV] APC in trunk」スレッド - MARC。Marc.info。2014年2月14日閲覧。
- ^ "「Re: [PHP-DEV] APC in trunk」 - MARC。Marc.info。2014年2月14日閲覧。
- ^ "PHP: rfc:optimizerplus" . Wiki.php.net . 2014年2月14日閲覧。
- ^ 「PHP :: Bug #64625 :: PHP 5.4.13 および APC 3.1.13 でのセグメント違反」 . Bugs.php.net . 2014年2月14日閲覧。
- ^ a b c「[投票] PHPディストリビューションへのZend Optimizer+の統合」 PHP.net 。 2013年3月8日閲覧。
- ^ "PECL :: Package :: APCu" . Pecl.php.net . 2014年2月14日閲覧。
- ^ 「Zend Optimizer+」 . Zend Technologies . 2011年3月9日閲覧。
- ^ "ZendOptimizerPlus - GitHub" . GitHub . 2013年2月13日閲覧。
- ^ 「エンタープライズ PHP ソリューション | Zend by Perforce」。
- ^ 「Zend Server - PHP Webアプリケーションサーバー」 . Zend.com . 2014年2月14日閲覧。
- ^ 「Faq – XCache」 . 2017年12月1日閲覧。
- ^ 「Zend Platform 3.6.3 リリースノート」 。 2017年1月19日閲覧。
- ^ 「PHP用WinCache拡張機能」 。 2025年6月23日閲覧。
- ^ 「Zend OptimizerとZend Guard Loader」 。 2011年6月22日閲覧。