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