この記事では主に PHP の Opcache アクセラレーションの使用方法を紹介します。編集者が非常に優れていると考えたので、参考として共有します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。
この記事では、PHP の Opcache アクセラレーションの使用方法を紹介します。詳細は次のとおりです。
はじめに
PHP バージョン 5.5 以降では、PHP 独自の opcache を使用してパフォーマンス アクセラレーションを有効にすることができます。 (デフォルトは閉じています))。 PHP 5.5 より前のバージョンでは、APC アクセラレーションを使用する必要があります
Opcache は、解析された PHP スクリプトのプリコンパイルされたバイトコードを共有メモリに保存することで、毎回の PHP スクリプトのロードと解析のオーバーヘッドを回避する方法であり、パーサーはキャッシュされたものを直接読み取ることができます。バイトコードを共有メモリから取得できるため、PHP の実行効率が大幅に向上します。
設定
PHP 5.5.0 以降のバージョンでは、PHP は拡張ライブラリの形式で Opcache 関数をリリースバージョンに埋め込んでおり、開発者は追加するかコメントする必要があります。 Opcache 関連の設定を削除します。古いバージョンの場合、Opcache は PECL 拡張ライブラリとしてインストールおよび設定できます
php.ini:
[opcache] # 启动操作码缓存 opcache.enable=1 #针对支持CLI版本PHP启动操作码缓存 一般被用来测试和调试 opcache.enable_cli=1 # 共享内存大小,单位为MB opcache.memory_consumption=128 #存储临时字符串缓存大小,单位为MB,PHP5.3.0以前会忽略此项配置 opcache.interned_strings_buffer=8 #缓存文件数最大限制,命中率不到100%,可以试着提高这个值 opcache.max_accelerated_files=4000 #一定时间内检查文件的修改时间, 这里设置检查的时间周期, 默认为 2, 单位为秒 opcache.revalidate_freq=60 #开启快速停止续发事件,依赖于Zend引擎的内存管理模块,一次释放全部请求变量的内存,而不是依次释放内存块 opcache.fast_shutdown=1 #启用检查 PHP 脚本存在性和可读性的功能,无论文件是否已经被缓存,都会检查操作码缓存,可以提升性能。 但是如果禁用了 opcache.validate_timestamps选项, 可能存在返回过时数据的风险。 opcache.enable_file_override=1
Opcache Notes
1 Opcache を使用する場合、apc および Xcache アクセラレーションを使用する必要はありません。 ;
PHP 5.5.0 以降のバージョンには Opcache のサポートが組み込まれているため、PHP は Xcache などのサードパーティの PHP オプティマイザーと比較して、Opcache を使用することがより良い選択となるでしょう。また、両方が同時に存在すると、Opcache のキャッシュヒット数が大幅に減少し、不要なオーバーヘッドが追加されます。
2. 開発プロセス中に Opcache を有効にすることはお勧めできません
Opcache を有効にした後は、開発者によって変更されたコンテンツは表示されず、すぐに有効になりません。これは、opcache.revalidate_freq=60 の影響を受けるためです。開発およびテスト後にテストを行うことをお勧めします。パフォーマンスが高い場合は、テストを再度オンにします。もちろん、本番環境では Opcache を常にオンにする必要があります。
3. Opcache インジケーターを大きく設定しすぎることはお勧めできません
設定サイズや各 Opcache インジケーターを有効にするかどうかは、プロジェクトの実際のニーズと Opcache が公式に推奨する設定を組み合わせる必要があります。プロジェクトの調整は、上記のビジュアル キャッシュ情報分析の調整の 4 番目の部分と組み合わせることができます。
4. 古いバージョンの Opcache を長期間使用することはお勧めしません
Opcache のバグ修正、機能の最適化、新機能をリアルタイムで知るために、Opcache の公式 Web サイトに注意を払うことをお勧めします。 、それを自分のプロジェクトにうまく適用できるようにします。
5. 上記で紹介したオープンソース プロジェクトを運用環境の Web サービスのルート ディレクトリに配置することはお勧めできません。理由は非常に簡単です。このオープンソース プロジェクトにはアクセス制限やセキュリティ処理がないためです。外部からアクセスできる人は誰でもアクセスできる インターネットの利用者は、アクセスアドレスを知っていれば直接アクセスできるため、安全ではありません。一般に、このオープンソース ツールは PHP のパフォーマンスを視覚的に分析するのにのみ役立ち、通常は開発およびデバッグの段階で使用されます。実稼働環境で有効にするだけの場合は、セキュリティ制限を行う必要があります。
関連する推奨事項:以上がPHP の Opcache アクセラレーションの使用方法を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。