1. 程式人生 > >php7性能優化

php7性能優化

php7

之前一直使用的PHP版本都是6.5/6.6的,這次的項目開發要求使用PHP7,在網上大概看了下,發現PHP7的性能較之前相比提升了很多,所以使用PHP7我也沒啥意見,欣然接受。

今天溫州一家客戶做活動,導致用戶量突然多了起來,原本服務器現在還處於內測階段,服務器以及PHP環境並沒有做相關的性能優化,並且服務器配置還比較低,導致php-fpm進程出現掛死狀態,一度服務全掛。

好,廢話不多說,今天主要記錄PHP7的相關優化,資料也是從網上查了許久,整理了下,準備晚上優化看看效果。

1、開啟Zend Opcache

Zend Opcache支持php5.2.0+的版本,但是Zend Opcache到底是什麽呢?官方介紹翻譯是通過代碼緩存和優化提供了更快的PHP執行。根據官方的介紹為:通過在share memory中存儲已經編譯好的代碼來提升執行速度(PS:可以通過配置來決定他的存儲時間),省去了從磁盤讀取再編譯的時間(PS:這其實是時間開銷最大的部分),此外,還通過一些代碼優化模式來提升執行速度(PS:官方並沒有給出這個優化原理)。好以上是官方介紹,我盡量多讀幾遍,理解理解。

下面是啟動方法,在php.ini文件加入:

zend_extension=opcache.so

opcache.enable=1

opcache.enable_cli=1


2、Hugepage 大頁內存管理方式

關於Hugepage詳細介紹可參考:http://blog.csdn.net/leshami/article/details/8777639

首先在系統中開啟Hugepage,然後開啟Opcache的huge_code_pages:

sysctl vm.nr_hugepages=512 ##分配512個預留的大頁內存

cat /proc/meminfo | grep Huge

然後在php.ini中加入:

opcache.huge_code_pages=1


3、Opcache File Cache

開啟Opcache File Cache,通過開啟這個可以讓Opcache把opcode緩存緩存到外部文件中,對於一些腳本,會有明顯的性能提升。在php.ini中加入:

opcache.file_cache=/tmp


4、PGO

這塊不是很理解,後面再更新。。。

本文出自 “OpsWorld” 博客,請務必保留此出處http://cuimengah.blog.51cto.com/12607637/1980385

php7性能優化