PHP7 は、過去 10 年間で最大のバージョンアップおよび最大のパフォーマンスアップグレードとしてリリースされ、複数のテストで明らかなパフォーマンスの向上を示しましたが、最大限のパフォーマンスを発揮するにはまだいくつかの課題があります。
1. Opcache
Opcache が有効になっていない場合でも、PHP7 は PHP-5.6 よりも高速なので、前回のテスト期間中に発生したことを忘れないでください。 Opcache を有効にしたことがない人は、次を追加するだけです: zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1"
実際、GCC 4.8 より前のバージョンもサポートしていますが、サポートにバグがあるため、この機能を有効にするにはバージョン 4.8 以降である必要があります。
3. HugePage
私の以前の記事でも紹介しました: Hugepage を使用して PHP7 を高速化し、まずシステムで HugePages を有効にしてください。次に、Opcache の huge_code_pages を有効にします。私の CentOS 6.5 を例として、パス:
$sudo sysctl vm.nr_hugepages=512 512 の予約された巨大なページ メモリを割り当てます:$ cat /proc/meminfo | grep Huge AnonHugePages: 106496 kB HugePages_Total: 512 HugePages_Free: 504 HugePages_Rsvd: 27 HugePages_Surp: 0 Hugepagesize: 2048 kB次に、php.ini に次を追加します:
opcache.huge_code_pages=1Inこのように、PHP は大きなメモリ ページを使用して独自のテキスト セグメントと大量のメモリ割り当てを保存し、TLB ミスを減らし、パフォーマンスを向上させます。
4. Opcache
fileキャッシュ
Opcache ファイル キャッシュを有効にする (実験的)。これにより、Opcache がオペコードキャッシュを外部ファイルにキャッシュできるようになり、一部のスクリプトではパフォーマンスが大幅に向上します。php.ini に追加:
opcache.file_cache=/tmp
このようにして、PHP は一部のオペコード バイナリ エクスポートをキャッシュします。 /tmp ディレクトリ内のファイルは、PHPライフ サイクル全体に存在できます。
$ make prof-gen次に、プロジェクトを使用して、たとえば WordPress 用に PHP をトレーニングします。
$ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/nullつまり、php-cgi を 100 実行します。 WordPress ホームページを参照して、プロセス内でいくつかのプロファイル情報を生成します。最後に:
$ make prof-clean $ make prof-use && make installこの時点でコンパイルする PHP7 は、プロジェクトに合わせて調整された最高パフォーマンスのコンパイル済みバージョンです。
以上がphp7 パフォーマンス最適化に関する 5 つのヒントのまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。