PHP7 がリリースされました。この 10 年間で PHP の最大のバージョン アップグレードおよび最大のパフォーマンス アップグレードとして、PHP7 は複数のテストで明らかなパフォーマンスの向上を示しました。
PHP7 VS PHP5.61.Opcache
忘れずに有効にしてくださいZend Opcache, なぜなら、PHP7 は、Opcache を有効にしなくても、Opcache を有効にした PHP-5.6 よりも高速であるため、前回のテスト期間中に Opcache を有効にしなかった人もいました。Opcache を有効にするのは非常に簡単で、php.ini 設定ファイルに:# を追加するだけです。 ##zend_extension=opcache.soopcache.enable=1opcache.enable_cli=1"
2. 新しいコンパイラを使用します新しいコンパイラを使用します。GCC 4.8 以降の PHP のみが使用できるため、GCC 4.8 以降を推奨します。 opline およびexecute_data のグローバル登録サポートが有効になり、パフォーマンスが 5% 向上します (Wordpres の QPS の観点から測定)
実際には、GCC 4.8 より前のバージョンもサポートしていますが、そのサポートにはバグがあるため、この機能を有効にするにはバージョン 4.8 以降である必要があります。システムは HugePages をオンにしてから、Opcache の huge_code_pages をオンにします。
CentOS 6.5 を例として、512 の予約されたヒュージ ページ メモリを次のように割り当てます。
$sudo sysctl vm.nr_hugepages=512
$ cat /proc/meminfo | grep HugeAnonHugePages: 106496 kBHugePages_Total: 512HugePages_Free: 504HugePages_Rsvd: 27HugePages_Surp: 0Hugepagesize: 2048 kB
次に追加:
opcache.huge_code_pages=1
このようにして、PHP は大きなメモリ ページを使用して独自のテキスト セグメントと大量のメモリ割り当てを保存し、TLB ミスを減らし、パフォーマンスを向上させます。
4. Opcache ファイル キャッシュ
Opcache ファイル キャッシュを有効にする (実験的)。これを有効にすることで、Opcache がオペコード キャッシュを外部ファイルにキャッシュできるようになります。一部のスクリプトでは、明らかな問題が発生します。パフォーマンスの向上。
追加:opcache.file_cache=/tmpを php.ini に追加すると、PHP は一部のオペコード バイナリ エクスポート ファイルを /tmp ディレクトリにキャッシュします。このファイルは、PHP のライフ サイクル全体にわたって存在できます。
我之前的文章: 让你的PHP7更快(GCC PGO) 也介绍过, 如果你的PHP是专门为一个项目服务, 比如只是为你的Wordpress, 或者drupal, 或者其他什么, 那么你就可以尝试通过PGO, 来提升PHP, 专门为你的这个项目提高性能.
具体的, 以wordpress 4.1为优化场景.. 首先在编译PHP的时候首先:
$ make prof-gen
然后用你的项目训练PHP, 比如对于Wordpress:
$ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/null
也就是让php-cgi跑100遍wordpress的首页, 从而生成一些在这个过程中的profile信息.
最后:
$ make prof-clean$ make prof-use && make install
这个时候你编译得到的PHP7就是为你的项目量身打造的最高性能的编译版本.
暂时就这么多吧, 以后想起来再加, 欢迎大家尝试, thanks
更多免费推荐:PHP7教程
以上がPHP7 で Opcache を開き、PHP7 のパフォーマンスを最適化するためのいくつかの設定の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。