推薦(免費):PHP7
一點PHP部落格分享如何發揮出PHP7版本中的高效能, PHP7發布也有一段時間了,但是現在還有很多小伙伴還在用PHP5.6開發項目,有的小伙伴用了PHP7只是聽說是高性能的版本,卻不知道如何體現出PHP7的優勢,描述總結一篇關於PHP7的文章分享給大家。
在使用PHP7的時候如果要開啟它的高效能,需注意以下幾點:
1. Opcache
# 一定要啟用Zend Opcache,不過就算不去開啟這個擴展,它的效能速度也比PHP5.6高很多。啟用Opcache方式,在php.ini設定檔中加入:
zend_extension=opcache.so opcache.enable=1 opcache.enable_cli=1
2. 使用新的編譯器
使用新一點的編譯器,推薦GCC 4.8以上,因為只有GCC 4.8以上PHP才會開啟Global Register for opline and execute_data支持,這個會帶來5%左右的效能提升(Wordpres的QPS角度衡量)
其實GCC 4.8以前的版本也支持,但我們發現它支援的有Bug,所以必須是4.8以上的版本才會開啟這個特性。
3. HugePage
一定要在系統中開啟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=1
這樣一來,PHP會把自身的text段,以及內存分配中的huge都採用大內存頁來保存,減少TLB miss,從而提高性能。
4. Opcache file cache
開啟Opcache File Cache(實驗性),透過開啟這個,我們可以讓Opcache把opcode快取快取到外部檔案中,對於一些腳本,會有很明顯的效能提升。
在php.ini中加入:
opcache.file_cache=/tmp
這樣PHP就會在/tmp目錄下Cache一些Opcode的二進位匯出文件,可以跨PHP生命週期存在。
5. 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訊息,從而讓PHP記住這些資訊。
最後:
$ make prof-clean $ make prof-use
這時候你編譯得到的PHP7,就是為你的專案量身打造的最高效能的編譯版本。
從基礎到tp5商城實戰、laravel5.6實戰、swoole、支付接口開發、redis、高並發等中高級學習
薇X:xiaopingguo950321 企鵝號:722584796
以上是充分發揮PHP7的高性能,做條的鹹魚的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3漢化版
中文版,非常好用

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具