本篇文章主要介紹了PHP 的Opcache加速的使用方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
本文介紹了PHP 的Opcache加速的使用方法,具體如下,分享給大家:
介紹
PHP 5.5+版本以上的,可以使用PHP內建的opcache開啟效能加速(預設是關閉的)。對於PHP 5.5以下版本的,需要使用APC加速
Opcache是一種通過將解析的PHP指令碼先行編譯的位元組碼存放在共用記憶體中來避免每次載入和解析PHP指令碼的開銷,解析器可以直接從共用記憶體讀取已經緩衝的位元組碼,從而大大提高PHP的執行效率。
配置
在PHP 5.5.0及後續版本中,PHP已經將Opcache功能以拓展庫形式內嵌在發布版本中了,預設未開啟Opcache加速,需要開發人員在php.ini中添加或解注釋Opcache相關配置即可。對於之前的老版本,可以將Opcache作為PECL拓展庫進行安裝和配置
php.ini:
[opcache]# 啟動作業碼緩衝opcache.enable=1#針對支援CLI版本PHP啟動作業碼緩衝 一般被用來測試和調試opcache.enable_cli=1# 共用記憶體大小,單位為MBopcache.memory_consumption=128#儲存臨時字串緩衝大小,單位為MB,PHP5.3.0以前會忽略此項配置opcache.interned_strings_buffer=8#快取檔案數最大限制,命中率不到100%,可以試著提高這個值opcache.max_accelerated_files=4000#一定時間內檢查檔案的修改時間, 這裡設定檢查的時間周期, 預設為 2, 單位為秒opcache.revalidate_freq=60#開啟快速停止續發事件,依賴於Zend引擎的記憶體管理模組,一次釋放全部請求變數的記憶體,而不是依次釋放記憶體塊opcache.fast_shutdown=1#啟用檢查 PHP 指令碼存在性和可讀性的功能,無論檔案是否已經被緩衝,都會檢查作業碼緩衝,可以提升效能。 但是如果禁用了 opcache.validate_timestamps選項, 可能存在返回過時資料的風險。opcache.enable_file_override=1
Opcache注意事項
1、使用Opcache就沒必要使用apc 和 Xcache加速;
因為PHP 5.5.0及後續版本已經內嵌對Opcache的支援,所以PHP意識到其重要性,相對於Xcache等第三方的PHP最佳化器來說,使用Opcache會是更好的選擇。另外,兩者同時存在的話,會使Opcache的快取命中數大大降低,而且增加不必要的開銷。
2、不建議在開發過程中開啟Opcache
開啟了Opcache之後,開發人員修改的內容不會立即顯示和生效,因為受到opcache.revalidate_freq=60的影響,所以建議在開發並測試之後,測試效能時再行開啟測試,當然,生產環境一直都要開著Opcache。
3、不建議將Opcache指標設定太大
Opcache各項指標配置大小或是否開啟,需要結合項目實際情況需求及Opcache官方建議的配置,項目的實際情況分析,可結合上面第四部分的可視化緩衝資訊分析調整。
4、不建議長期使用老版本的Opcache
建議及時關注Opcache官網動態,即時瞭解其的bugs修複,功能最佳化及新增功能,以便更好的將其應用在自己的項目中。
5、不建議在生產環境中,將上面介紹的開源項目放入Web服務根目錄
原因很簡單,因為這個開源項目並未做訪問的限制和安全處理,也就是說凡是可以訪問外網的使用者,只要知道了訪問地址就可以直接存取,所以不安全。一般下,這個開源工具只是協助可視化分析PHP的效能,通常在開發調試階段使用。如果就是想在生產環境開啟使用,那麼就必須做好安全限制工作。
以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援php中文網。
您可能感興趣的文章:
利用Laravel產生Gravatar頭像地址的方法
詳談PHP中public,private,protected,abstract等關鍵字的相關用法
PHP讓數組中有相同值的組成新的數組執行個體講解