php 開啟opcache

來源:互聯網
上載者:User

標籤:lis   技術分享   關閉   .dll   files   err   代碼   log   破壞   

說明

PHP 5.5+版本以上的,可以使用PHP內建的opcache開啟效能加速(預設是關閉的)。對於PHP 5.5以下版本的,需要使用APC加速,這裡不說明,可以自行上網搜尋PHP APC加速的方法。

 

 

PHP開啟opcache方法

1、開啟php.ini檔案

2、找到:[opcache],設定為:

[opcache]; dll地址zend_extension=php_opcache.dll; 開關開啟opcache.enable=1; 開啟CLIopcache.enable_cli=1; 可用記憶體, 酌情而定, 單位為:Mbopcache.memory_consumption=528; Zend Optimizer + 暫存池中字串的占記憶體總量.(單位:MB)opcache.interned_strings_buffer=8; 對多快取檔案限制, 命中率不到 100% 的話, 可以試著提高這個值opcache.max_accelerated_files=10000; Opcache 會在一定時間內去檢查檔案的修改時間, 這裡設定檢查的時間周期, 預設為 2, 定位為秒opcache.revalidate_freq=1; 開啟快速關閉, 開啟這個在PHP Request Shutdown的時候回收記憶體的速度會提高opcache.fast_shutdown=1

 

3、重啟apache即可。

 

測試

配置完成後,可以使用如下代碼查詢opcache:

<?php    phpinfo();?>

訪問頁面得到如下介面:

 

 

 

以下是opcache的配置說明:

[opcache]zend_extension = "G:/PHP/php-5.5.6-Win32-VC11-x64/ext/php_opcache.dll" ; Zend Optimizer + 的開關, 關閉時代碼不再最佳化.opcache.enable=1 ; Determines if Zend OPCache is enabled for the CLI version of PHPopcache.enable_cli=1  ; Zend Optimizer + 共用記憶體的大小, 總共能夠儲存多少先行編譯的 PHP 代碼(單位:MB); 推薦 128opcache.memory_consumption=64 ; Zend Optimizer + 暫存池中字串的占記憶體總量.(單位:MB); 推薦 8opcache.interned_strings_buffer=4  ; 最大緩衝的檔案數目 200  到 100000 之間; 推薦 4000opcache.max_accelerated_files=2000 ; 記憶體“浪費”達到此值對應的百分比,就會發起一個重啟調度.opcache.max_wasted_percentage=5 ; 開啟這條指令, Zend Optimizer + 會自動將當前工作目錄的名字追加到指令碼鍵上,; 以此消除同名檔案間的索引值命名衝突.關閉這條指令會提升效能,; 但是會對已存在的應用造成破壞.opcache.use_cwd=0  ; 開啟檔案時間戳記驗證 opcache.validate_timestamps=1  ; 2s檢查一次檔案更新 注意:0是一直檢查不是關閉; 推薦 60opcache.revalidate_freq=2 ; 允許或禁止在 include_path 中進行檔案搜尋的最佳化;opcache.revalidate_path=0  ; 是否儲存檔案/函數的注釋   如果apigen、Doctrine、 ZF2、 PHPUnit需要檔案注釋; 推薦 0opcache.save_comments=1 ; 是否負載檔案/函數的注釋;opcache.load_comments=1  ; 開啟快速關閉, 開啟這個在PHP Request Shutdown的時候會收記憶體的速度會提高; 推薦 1opcache.fast_shutdown=1 ;允許覆蓋檔案存在(file_exists等)的最佳化特性。;opcache.enable_file_override=0  ; 定義啟動多少個最佳化過程;opcache.optimization_level=0xffffffff  ; 啟用此Hack可以暫時性的解決”can’t redeclare class”錯誤.;opcache.inherited_hack=1 ; 啟用此Hack可以暫時性的解決”can’t redeclare class”錯誤.;opcache.dups_fix=0 ; 設定不緩衝的黑名單; 不緩衝指定目錄下cache_開頭的PHP檔案. /png/www/example.com/public_html/cache/cache_ ;opcache.blacklist_filename=  ; 通過檔案大小屏除大檔案的緩衝.預設情況下所有的檔案都會被緩衝.;opcache.max_file_size=0 ; 每 N 次請求檢查一次緩衝校正.預設值0表示檢查被禁用了.; 由於計算校正值有損效能,這個指令應當緊緊在開發調試的時候開啟.;opcache.consistency_checks=0 ; 從緩衝不被訪問後,等待多久後(單位為秒)調度重啟;opcache.force_restart_timeout=180 ; 錯誤記錄檔檔案名稱.留空表示使用標準錯誤輸出(stderr).;opcache.error_log=  ; 將錯誤資訊寫入到伺服器(Apache等)日誌;opcache.log_verbosity_level=1 ; 記憶體共用的首選後台.留空則是讓系統選擇.;opcache.preferred_memory_model= ; 防止共用記憶體在指令碼執行期間被意外寫入, 僅用於內部調試.;opcache.protect_memory=0

 

文章參考

使用 OpCache 提升 PHP 5.5+ 程式效能

https://phphub.org/topics/301

php opcache 配置

https://blog.hackroad.com/operations-engineer/windows_server/9311.html

 

 

http://www.cnblogs.com/HD/p/4554455.html

 

php 開啟opcache

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.