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は現在廃止されています。eAcceleratorTurck MMCache のフォークです。

Xキャッシュ

XCacheは高速で安定したPHPオペコードキャッシャーで、テスト済みであり、現在、高負荷環境の運用サーバーで稼働しています。LinuxとFreeBSDでテストされており、Windowsではスレッドセーフ版と非スレッドセーフ版のPHPをサポートしています。この比較的新しいオペコードキャッシングソフトウェアは、Lighttpdの開発元であるmOoによって開発され、当時の既存ソリューションのいくつかの制限を克服しました。例えば、新しいPHPバージョンが登場してもすぐに使用できるなどです。

ヌスフィア PhpExpress

PhpExpressは、Nu-Coder(商用)エンコードされたPHPファイルとプレーンなPHPファイルの両方をPHPエンジンに直接読み込む無料のPHPオペコードキャッシュです。これにより、読み込み時間を短縮し、PHPアプリケーションのパフォーマンスを向上させます。Windows、Linux、FreeBSD、NetBSD、Mac OS X、Solarisで利用可能です。

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 ]

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で使用されます。

機能の比較

名前 可用性 オペコードキャッシュ ファイルキャッシュ ファイルパスキャッシュを解決する オブジェクト/セッションキャッシュ 最適化 メモリにキャッシュ ソースエンコーディング
装甲兵員輸送車 製造中止 はい はい ? はい はい はい いいえ
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のバイトコードを最適化したりキャッシュしたりすることはありません。

参照

参考文献

  1. ^ 「PHPオペコードキャッシュを使用したDrupalのベンチマーク:APC、eAccelerator、XCacheの比較 | 2bits.com, Inc. - Drupalパフォーマンス最適化、開発、マネージドホスティング、カスタマイズ、コンサルティング」 2bits.com . 2014年2月14日閲覧
  2. ^ 「PHPとFacebook」 . Blog.facebook.com . 2014年2月14日閲覧
  3. ^ "「[PHP-DEV] APC in trunk」スレッド - MARC。Marc.info2014年2月14日閲覧
  4. ^ "「Re: [PHP-DEV] APC in trunk」 - MARC。Marc.info2014年2月14日閲覧
  5. ^ "PHP: rfc:optimizerplus" . Wiki.php.net . 2014年2月14日閲覧
  6. ^ 「PHP :: Bug #64625 :: PHP 5.4.13 および APC 3.1.13 でのセグメント違反」 . Bugs.php.net . 2014年2月14日閲覧
  7. ^ a b c「[投票] PHPディストリビューションへのZend Optimizer+の統合」 PHP.net 。 2013年3月8日閲覧
  8. ^ "PECL :: Package :: APCu" . Pecl.php.net . 2014年2月14日閲覧
  9. ^ 「Zend Optimizer+」 . Zend Technologies . 2011年3月9日閲覧。
  10. ^ "ZendOptimizerPlus - GitHub" . GitHub . 2013年2月13日閲覧
  11. ^ 「エンタープライズ PHP ソリューション | Zend by Perforce」
  12. ^ 「Zend Server - PHP Webアプリケーションサーバー」 . Zend.com . 2014年2月14日閲覧
  13. ^ 「Faq – XCache」 . 2017年12月1日閲覧
  14. ^ 「Zend Platform 3.6.3 リリースノート」 。 2017年1月19日閲覧
  15. ^ 「PHP用WinCache拡張機能」 。 2025年6月23日閲覧
  16. ^ 「Zend OptimizerとZend Guard Loader」 。 2011年6月22日閲覧