PHP如何開啟Opcache功能提升程式處理效率
簡介
Opcache 的前生是 Optimizer+ ,它是 Zend 開發的 PHP 優化加速元件。Optimizer+ 將 PHP 程式碼預編譯生成的指令碼檔案 Opcode 快取在共享記憶體中供以後反覆使用,從而避免了從磁碟讀取程式碼再次編譯的時間消耗。同時,它還應用了一些程式碼優化模式,使得程式碼執行更快。從而加速 PHP 的執行。
正常的執行流程如下:
開啟 Opcache 後的執行流程如下:
Yum 安裝
php -v
yum list *opcache*
yum -y install rh-php71-php-opcache.x86_64
kill -USR2 cat `/usr/local/php/var/run/php-fpm.pid`
nginx -s reload
配置
zend_extension=opcache.so
[opcache]
;開啟opcache功能
opcache.enable=1;CLI環境下,開啟opcache功能
opcache.enable_cli=1;OPcache共享記憶體的大小,單位MB
opcache.memory_consumption=128;字串在程序間駐留科使用的記憶體大小,單位MB
opcache.interned_strings_buffer=8;記憶體中可以快取的檔案量。200-1000000之間
;可以使用“find . -type f -print | grep php | wc -l”統計檔案數opcache.max_accelerated_files=4000;快取的過期時間,單位秒
opcache.revalidate_freq=60;開啟快速響應機制來呼叫程式碼中的析構器,PHP 7.2.0 開始移除
opcache.fast_shutdown=1;開啟檔案更新檢查,到達 revalidate_freq 時間之後會檢查檔案變更並更新快取,設為0則永不檢查
opcache.validate_timestamps=1;開啟快取二進位制匯出檔案到外部檔案,位置為傳入的值
opcache.file_cache=/tmp
檢視是否安裝成功
php -m
或
<?php phpinfo(); ?>
常用函式
// 重置所有的opcache快取。FPM模式下生成的快取,在CLI下不能RESET。
var_dump(opcache_reset()); //bool(true)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。