本文介紹了PHP 的Opcache加速的使用方法,具體如下,分享給大家:
介紹
PHP 5.5+版本以上的,可以使用PHP自帶的opcache開啟性能加速(默認是關閉的)。對于PHP 5.5以下版本的,需要使用APC加速
Opcache是一種通過將解析的PHP腳本預編譯的字節(jié)碼存放在共享內(nèi)存中來避免每次加載和解析PHP腳本的開銷,解析器可以直接從共享內(nèi)存讀取已經(jīng)緩存的字節(jié)碼,從而大大提高PHP的執(zhí)行效率。
配置
在PHP 5.5.0及后續(xù)版本中,PHP已經(jīng)將Opcache功能以拓展庫形式內(nèi)嵌在發(fā)布版本中了,默認未開啟Opcache加速,需要開發(fā)人員在php.ini中添加或解注釋Opcache相關配置即可。對于之前的老版本,可以將Opcache作為PECL拓展庫進行安裝和配置
php.ini:
[opcache]
# 啟動操作碼緩存
opcache.enable=1
#針對支持CLI版本PHP啟動操作碼緩存 一般被用來測試和調(diào)試
opcache.enable_cli=1
# 共享內(nèi)存大小,單位為MB
opcache.memory_consumption=128
#存儲臨時字符串緩存大小,單位為MB,PHP5.3.0以前會忽略此項配置
opcache.interned_strings_buffer=8
#緩存文件數(shù)最大限制,命中率不到100%,可以試著提高這個值
opcache.max_accelerated_files=4000
#一定時間內(nèi)檢查文件的修改時間, 這里設置檢查的時間周期, 默認為 2, 單位為秒
opcache.revalidate_freq=60
#開啟快速停止續(xù)發(fā)事件,依賴于Zend引擎的內(nèi)存管理模塊,一次釋放全部請求變量的內(nèi)存,而不是依次釋放內(nèi)存塊
opcache.fast_shutdown=1
#啟用檢查 PHP 腳本存在性和可讀性的功能,無論文件是否已經(jīng)被緩存,都會檢查操作碼緩存,可以提升性能。 但是如果禁用了 opcache.validate_timestamps選項, 可能存在返回過時數(shù)據(jù)的風險。
opcache.enable_file_override=1
Opcache注意事項
1、使用Opcache就沒必要使用apc 和 Xcache加速;
因為PHP 5.5.0及后續(xù)版本已經(jīng)內(nèi)嵌對Opcache的支持,所以PHP意識到其重要性,相對于Xcache等第三方的PHP優(yōu)化器來說,使用Opcache會是更好的選擇。另外,兩者同時存在的話,會使Opcache的緩存命中數(shù)大大降低,而且增加不必要的開銷。
2、不建議在開發(fā)過程中開啟Opcache
開啟了Opcache之后,開發(fā)人員修改的內(nèi)容不會立即顯示和生效,因為受到opcache.revalidate_freq=60的影響,所以建議在開發(fā)并測試之后,測試性能時再行打開測試,當然,生產(chǎn)環(huán)境一直都要開著Opcache。
3、不建議將Opcache指標設置太大
Opcache各項指標配置大小或是否開啟,需要結(jié)合項目實際情況需求及Opcache官方建議的配置,項目的實際情況分析,可結(jié)合上面第四部分的可視化緩存信息分析調(diào)整。
4、不建議長期使用老版本的Opcache
建議及時關注Opcache官網(wǎng)動態(tài),實時了解其的bugs修復,功能優(yōu)化及新增功能,以便更好的將其應用在自己的項目中。
5、不建議在生產(chǎn)環(huán)境中,將上面介紹的開源項目放入Web服務根目錄
原因很簡單,因為這個開源項目并未做訪問的限制和安全處理,也就是說凡是可以訪問外網(wǎng)的用戶,只要知道了訪問地址就可以直接訪問,所以不安全。一般下,這個開源工具只是幫助可視化分析PHP的性能,通常在開發(fā)調(diào)試階段使用。如果就是想在生產(chǎn)環(huán)境開啟使用,那么就必須做好安全限制工作。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 如何使用OPCache提升PHP的性能
- 解決PHP Opcache 緩存刷新、代碼重載出現(xiàn)無法更新代碼的問題
- PHP如何開啟Opcache功能提升程序處理效率
- php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法實例分析
- 啟用OPCache提高PHP程序性能的方法
- PHP配置ZendOpcache插件加速
- PHP Opcache安裝和配置方法介紹
- PHP開啟opcache提升代碼性能
- 詳解PHP7開啟OPcache和Swoole性能的提升對比