php7達到最高性能的幾個Tips

#參考:http://www.laruence.com/2015/12/04/3086.htmlphp

  1. 開啓opcache,默認php7沒有開啓,在編譯安裝php7的的時候加上 --enable-opcache,會在擴展文件夾內生成opcache.so,而後在ini的配置文件夾內加上opcache.ini,內容以下:
[opcache]
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1

重啓php-fpm後能夠看到Zend OPcache設置html

  1. 使用高版本編譯安裝php7,使用GCC 4.8以上, 由於只有GCC 4.8以上PHP纔會開啓Global Register for opline and execute_data支持, 這個會帶來5%左右的性能提高,centos默認的gcc只有4.4左右,須要編譯安裝最新版本的gcc,gcc手工編譯參考:https://teddysun.com/432.html
#若是是在 x86_64 系統下編譯的話,還須要安裝 libgcc.i686 glibc-devel.i686 才行
yum install -y gcc texinfo-tex flex zip libgcc.i686 glibc-devel.i686
#先到  http://mirrors.ustc.edu.cn/gnu/gcc/ 看最新版本是多少,而後下載
cd /usr/local/src
wget http://mirrors.ustc.edu.cn/gnu/gcc/gcc-4.9.4/gcc-4.9.4.tar.bz2
tar xf gcc-4.9.4.tar.bz2
cd gcc-4.9.4
./contrib/download_prerequisites
mkdir gcc-build-4.9.4
cd gcc-build-4.9.4
../configure --prefix=/usr
#爲了不安裝後系統裏出現多個版本的 GCC,這裏直接將編譯安裝的目錄指定爲 /usr,若是不指定 –prefix,則會默認安裝到 /usr/local 下
#整個編譯過程須要很長時間,加入利用的cpu數量會加快不少
cpuNum=`grep processor /proc/cpuinfo | wc -l`
make -j $cpuNum && make install
#安裝完後,查看版本
gcc -v

經過上述方式安裝了gcc後,請慎用 yum update 和經過 yum 來升級 GCCweb

  1. 開啓huge_code_pages
sysctl vm.nr_hugepages=512
#在opcache設置加入
 opcache.huge_code_pages=1
  1. 加入Opcache file cache
#在opcache設置加入
opcache.file_cache=/tmp
  1. PGO 也就是讓php-cgi跑100遍wordpress的首頁, 從而生成一些在這個過程當中的profile信息. 若是你的PHP是專門爲一個項目服務, 好比只是爲你的Wordpress, 或者drupal, 或者其餘什麼, 那麼你就能夠嘗試經過PGO, 來提高PHP, 專門爲你的這個項目提升性能.
#首先在編譯PHP以前時候首先執行:
make prof-gen
sapi/cgi/php-cgi -T 100 /data/wwwroot/wordpress/web/index.php >/dev/null
make prof-clean
make prof-use && make install

這個時候你編譯獲得的PHP7就是爲你的項目量身打造的最高性能的編譯版本.centos

相關文章
相關標籤/搜索