PHP如何開(kāi)啟Opcache功能提升程序處理效率
簡(jiǎn)介
Opcache 的前生是 Optimizer+ ,它是 Zend 開(kāi)發(fā)的 PHP 優(yōu)化加速組件。Optimizer+ 將 PHP 代碼預(yù)編譯生成的腳本文件 Opcode 緩存在共享內(nèi)存中供以后反復(fù)使用,從而避免了從磁盤(pán)讀取代碼再次編譯的時(shí)間消耗。同時(shí),它還應(yīng)用了一些代碼優(yōu)化模式,使得代碼執(zhí)行更快。從而加速 PHP 的執(zhí)行。
正常的執(zhí)行流程如下:
開(kāi)啟 Opcache 后的執(zhí)行流程如下:
Yum 安裝
php -vyum 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];開(kāi)啟opcache功能opcache.enable=1
;CLI環(huán)境下,開(kāi)啟opcache功能opcache.enable_cli=1
;OPcache共享內(nèi)存的大小,單位MBopcache.memory_consumption=128
;字符串在進(jìn)程間駐留科使用的內(nèi)存大小,單位MBopcache.interned_strings_buffer=8
;內(nèi)存中可以緩存的文件量。200-1000000之間;可以使用“find . -type f -print | grep php | wc -l”統(tǒng)計(jì)文件數(shù)opcache.max_accelerated_files=4000
;緩存的過(guò)期時(shí)間,單位秒opcache.revalidate_freq=60
;開(kāi)啟快速響應(yīng)機(jī)制來(lái)調(diào)用代碼中的析構(gòu)器,PHP 7.2.0 開(kāi)始移除opcache.fast_shutdown=1
;開(kāi)啟文件更新檢查,到達(dá) revalidate_freq 時(shí)間之后會(huì)檢查文件變更并更新緩存,設(shè)為0則永不檢查opcache.validate_timestamps=1
;開(kāi)啟緩存二進(jìn)制導(dǎo)出文件到外部文件,位置為傳入的值opcache.file_cache=/tmp
查看是否安裝成功
php -m或<?php phpinfo(); ?>
常用函數(shù)
// 重置所有的opcache緩存。FPM模式下生成的緩存,在CLI下不能RESET。var_dump(opcache_reset()); //bool(true)
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法2. Nginx+php配置文件及原理解析3. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無(wú)效問(wèn)題4. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法5. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析6. 淺談python出錯(cuò)時(shí)traceback的解讀7. python matplotlib:plt.scatter() 大小和顏色參數(shù)詳解8. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)9. Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼10. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向
