HestiaCPでOPcacheを最適化するには?オペコードのキャッシュとPHPコードのコンパイルは、ウェブサイトの速度を劇的に向上させることができます。

スピードは命綱だ。ウェブサイトの表示がほんのわずかでも遅れると、ユーザーはすぐに離れていってしまう。

それが理由です ヘスティアCP OPcacheの最適化は、PHPに依存するあらゆるウェブサイトの成否を左右する重要な要素です。

OPcacheとは何ですか?

OPcacheはPHPに組み込まれているバイトコードキャッシュエンジンです。

その機能はシンプルです。コンパイル済みのPHPスクリプトをメモリにキャッシュし、再度アクセスする際には再コンパイルする代わりに、キャッシュされたスクリプトを直接呼び出します。

これにより、ウェブサイトの応答速度が向上し、CPU負荷が軽減され、サーバーへの負荷が即座に緩和されます。

PHPの公式ドキュメントによると:

「OPcacheは、スクリプトコンパイルの重複を回避することで実行時間を短縮し、パフォーマンスを大幅に向上させます。」

要するに、OPcacheはPHPアクセラレータです。

HestiaCPでOPcacheを最適化する理由とは?

HestiaCPでOPcacheを最適化するには?オペコードのキャッシュとPHPコードのコンパイルは、ウェブサイトの速度を劇的に向上させることができます。

HestiaCPは、多くの人がVPSや専用サーバーの管理に利用している軽量なコントロールパネルです。

OPcacheはデフォルトで有効になっていますが、パラメータは多くの場合、控えめな値に設定されています。

調整を行わなければ、性能向上は限定的なものとなるだろう。

例えば:
4コア、8GBメモリを搭載したサーバーでは、デフォルトのOPcacheメモリはわずか64MBで、キャッシュされるファイル数はわずか4000個です。
これは中型サイズです WordPress ウェブサイトとしては、それだけでは到底不十分だ。

その結果、キャッシュが頻繁にクリアされ、パフォーマンスが繰り返し変動することになる。

現在のOPcacheの状態を確認します

次のコマンドを実行します。

php -i | grep opcache.enable

以下のような結果が表示されます。

  • opcache.enable => On: これは、PHP-FPMでOPcacheが有効になっていることを意味します。
  • opcache.enable_cli => オフ: コマンドラインモードでは有効になっていません。
  • opcache.enable_file_override => オフ: ファイルオーバーライド機能は有効になっていません。

つまり、OPcacheは既に機能しているものの、まだ最適化の余地があるということだ。

PHP設定ファイルを編集する

HestiaCPでは、PHP設定ファイルのパスは通常次のようになります。

/etc/php/8.x/fpm/php.ini

CLIモードを有効にするには:

/etc/php/8.x/cli/php.ini

[opcache]セクションを見つけて、以下のパラメータを追加または変更してください。

[opcache]
; 启用 OPcache
opcache.enable=1
opcache.enable_cli=1

; 内存与缓存设置
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000

; 文件更新检测
opcache.validate_timestamps=0
opcache.revalidate_freq=60

; 其他优化参数
opcache.save_comments=1
opcache.fast_shutdown=1
opcache.enable_file_override=1

パラメータの詳細と最適化ロジック

  • opcache.メモリ消費量=256
    OPcacheに256MBのメモリを割り当てることは、中規模から大規模なウェブサイトに適しています。
    小規模なウェブサイトの場合は、128MBに設定できます。

  • opcache.interned_strings_buffer=16
    重複する文字列の使用を減らすために、16MBの文字列キャッシュを提供します。

  • opcache.max_accelerated_files=10000
    WordPressとプラグインが混在する環境では、キャッシュするファイルの最大数は少なくとも10000個にすることをお勧めします。

  • opcache.revalidate_freq=60
    頻繁な入出力を減らすため、ファイルは60秒ごとに更新チェックされます。

  • opcache.enable_cli=1
    CLIキャッシュを有効にすることは、ArtisanやWP-CLIなどのコマンドラインツールを実行するのに適しています。

  • opcache.enable_file_override=1
    OPcacheにファイルシステムキャッシュを任せることで、ディスクアクセスをさらに削減できます。

  • opcache.validate_timestamps=0
  • リアルタイム検出を無効にするファイルシステムのI/Oを削減し、パフォーマンスを向上させます。
  • ただし、これはPHPファイルを変更した後、手動でキャッシュをクリアする(PHPサービスを再起動する)必要があることを意味します。

設定を変更した後は、変更を有効にするためにPHPサービスを再起動する必要があります。

sudo systemctl restart php<版本>-fpm

これらのパラメータの組み合わせにより、ウェブサイトは高い同時接続数下でも安定性を維持できます。

PHP-FPMサービスを再起動してください。

変更を加えた後は、必ずサービスを再起動してください。

sudo systemctl restart php8.x-fpm

そしてもう一度実行してください。

php -i | grep opcache

パラメータが更新されたことが確認されました。

本番環境におけるベストプラクティス

本番環境におけるOPcacheの最適化は、パラメータ調整だけにとどまらず、以下の戦略も含まれます。

1. デプロイ中にキャッシュをクリアする

コードを更新するたびに、OPcacheをクリアする必要があります。そうしないと、古いバージョンがロードされる可能性があります。

CI/CDスクリプトに以下を追加できます。

<?php
opcache_reset();

または、デプロイプロセス内で実行することもできます。

systemctl reload php8.x-fpm

2. 頻繁な清掃は避ける

キャッシュのクリア頻度が高すぎると、パフォーマンスの低下につながる可能性があります。
定期的にクリーンアップを行うのではなく、コードが更新された時のみクリーンアップを行うことをお勧めします。

3. OPcacheの使用状況を監視する。

`php -i | grep opcache` コマンドを使用するか、Opcache Control Panel プラグインをインストールすることで、キャッシュヒット率をリアルタイムで確認できます。
ヒット率が95%以上であれば、適切な設定であることを示しています。

Zendの公式パフォーマンステストによると、OPcacheを有効にすることで、PHPスクリプトの実行速度を最大3倍向上させ、CPU使用率を50%削減できるとのことです。

これは神秘的な理論などではなく、確かなデータに基づいたものです。

結論:私の見解と重要な引用

私の意見では、OPcacheはウェブサイトにとっての「ターボチャージャー」のようなものです。OPcacheがなければ、PHPはターボチャージャーのない車のようなもので、ゆっくりとしか走らず、燃料を無駄に消費します。

OPcacheの最適化は、単なる技術的な詳細ではなく、ウェブサイト運営における戦略的な選択でもある。

スピードはコンバージョン率に直結し、パフォーマンスは競争力に直結するからだ。

重要な引用:ウェブサイトの未来は、コードの巧妙さにある​​のではなく、ユーザーが瞬きする暇もないほどの速さで反応できるかどうかにある。

したがって、サーバーが非効率的なループでリソースを浪費するのを止めましょう。

HestiaCPのOPcacheを今すぐ最適化して、ウェブサイトの速度を向上させましょう。

お客様の運用環境向けに、最高レベルのOPcache設定テンプレートを作成し、それをphp.iniに直接コピーして使用できるようにしましょうか?

Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ こちらで共有されている記事「HestiaCPでOPcacheを最適化する方法?オペコードキャッシュとPHPコードのコンパイルでウェブサイトを高速化する」が参考になるかもしれません。

この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-34197.html

さらに多くの隠されたトリックのロックを解除するには、Telegram チャンネルにぜひご参加ください。

気に入ったらシェアして「いいね!」してください!あなたのシェアと「いいね!」が私たちの継続的なモチベーションです。

 

发表评论

バグのあるボックスの内容は公開されません。 必須アイテム * 标注

記事ディレクトリ
上へスクロール