この記事では、PHP 7でAPCU OpCodeキャッシングをインストール、構成、トラブルシューティングする方法について説明します。それは構成オプション(apc.shm_size、apc.ttlなど)を詳細に説明し、phpinfo()を介したインストールを検証し、共有が不十分なような一般的な問題に対処します。
APCUのインストールと構成:
PHP 7のオペコードキャッシングにAPCUを使用するには、最初にインストールする必要があります。インストールプロセスは、オペレーティングシステムとPHPインストール方法によって異なります。 Package Managerを使用しているほとんどのシステム(Debian/UbuntuのAptやCentos/RhelのYumなど)の場合、通常、簡単なコマンドでインストールできます。たとえば、Debian/Ubuntuで:
<code class="bash">sudo apt-get update sudo apt-get install php7.4-apcu # Replace 7.4 with your PHP version</code>
インストール後、PHP構成ファイル(通常はphp.ini
)でAPCUが有効になっていることを確認する必要があります。 Line extension=apcu.so
(またはシステムに応じて同様に指定されたファイル)を除外するか、欠落している場合は追加する必要がある場合があります。 apcu.so
ファイルへの正確なパスは異なる場合があります。 PHPインストールディレクトリを確認してください。その後、変更が有効になるようにWebサーバー(Apache、Nginxなど)を再起動できます。
基本的な構成オプション:
php.ini
内で、APCUをさらに構成できます。いくつかの重要な設定には次のものがあります。
apc.enabled
:これは、APCUを有効にするために1
に設定する必要があります。apc.shm_size
:これにより、APCUが使用できる共有メモリの量が決まります。多くのコードまたは多くのユーザーがある場合は、この値を増やしてください。合理的な値(例えば、64mまたは128m)から始めて、必要に応じて調整します。apc.ttl
:これにより、キャッシュされたオペコードのデフォルトの時間(秒単位)が設定されます。 0の値は、それらが無期限にキャッシュされていることを意味します。apc.user_ttl
:これにより、ユーザーキャッシュされたデータ(OPCODESではなく)の時間までの時間が設定されます。 php.ini
を変更した後、Webサーバーを再起動します。
インストールの検証:
以下を含むPHPスクリプトを実行して、インストールを確認できます。
<code class="php"><?php phpinfo(); ?></code>
出力の「APCU」セクションを探します。存在し、バージョンや構成の設定などの詳細を表示する場合、APCUは正常にインストールされ、構成されます。
大幅なパフォーマンスの向上:
APCUは、コンパイルされたバイトコード(OPCODES)をキャッシュすることにより、PHP 7のパフォーマンスを大幅に向上させます。 PHPスクリプトが要求された場合、Webサーバーは通常、実行前にコードを解析してコンパイルする必要があります。このプロセスは、特により大きなスクリプトに対して時間がかかります。 APCUは、共有メモリにコンパイルされたオペコードを保存することにより、このオーバーヘッドを排除します。同じスクリプトの後続の要求は、事前にコンパイルされたバージョンをキャッシュから直接取得することができ、その結果、実行時間が劇的に速くなります。
サーバーの負荷の削減:
スクリプトコンパイルに関連するCPU負荷を減らすことにより、APCUはWebサーバーの負担を軽減します。これは、応答時間の改善と、より並行したリクエストを処理する能力につながります。
スケーラビリティの向上:
実行時間が速く、サーバーの負荷が削減されると、アプリケーションがよりスケーラブルになります。より高価なハードウェアに投資する必要なく、より多くのトラフィックとユーザーを処理できます。
PHP 7バージョンの互換性:
APCUは通常、ほとんどのPHP 7バージョンと互換性があります。ただし、PHP 7バージョン用に特別に構築されたAPCUバージョンを使用することが重要です。間違ったバージョンをインストールすると、エラーが発生する可能性があります。 PHPバージョンに正しいパッケージを使用していることを確認するには、常にAPCUドキュメントまたは配布のパッケージマネージャーを参照してください。大部分は互換性がありますが、特定のPHPバージョンとその基礎となるライブラリに応じて、小さな問題が発生する可能性があります。
Webサーバーの互換性:
APCU自体は特定のWebサーバーに結び付けられていません。 PHPが適切に構成されている限り、Apache、Nginxなどを含むさまざまなWebサーバーで動作します。重要なのは、WebサーバーをPHPを実行するように構成する必要があり、PHPをAPCU拡張機能を使用するように構成する必要があることです。
一般的な問題とトラブルシューティング手順:
php.ini
ファイルを確認して、 extension=apcu.so
ライン(または同等)が存在し、APCU拡張機能の正しい位置を指します。変更を行った後、Webサーバーを再起動します。apc.shm_size
)が小さすぎる可能性があります。 php.ini
でこの値を増やし、Webサーバーを再起動します。phpinfo()
に表示されません:インストールと構成を再確認します。 APCU拡張機能が正しくインストールされ、 php.ini
ファイルが正しく構成されていることを確認してください。 Webサーバーを再起動します。これらのポイントを体系的にチェックし、 phpinfo()
やサーバー監視ユーティリティなどのツールを使用することにより、PHP 7のAPCU実装に関連する最も一般的な問題を効果的にトラブルシューティングできます。
以上がPHP 7でのオペコードキャッシュにAPCUを使用する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。