在PHP5.5.34版本中啟用ZendOpcache-創(chuàng)新互聯(lián)

大家知道目前PHP的緩存插件一般有三個(gè):APC、eAccelerator、XCache,但未來它們可能都會(huì)消失,因?yàn)镻HP 5.5已經(jīng)集成Zend Opcache,功能和前三者相似但又有少許不同,緩存速度據(jù)說比它們更快(注意:只是據(jù)說,我沒測(cè)試過)。
這幾個(gè)PHP加速插件的主要原理都相同,就是把PHP執(zhí)行后的數(shù)據(jù)緩沖到內(nèi)存中從而避免重復(fù)的編譯過程,能夠直接使用緩沖區(qū)已編譯的代碼從而提高速度,降低服務(wù)器負(fù)載,它們的效率是顯而易見的。
Zend Opcache在PHP 5.5后的版本中已經(jīng)集成了,編譯安裝PHP5.5的時(shí)候加上--enable-opcache就行了,也支持低版本的 PHP 5.2.*, 5.3.*, 5.4.*,未來會(huì)取消對(duì)5.2的支持。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、匯川網(wǎng)絡(luò)推廣、微信小程序開發(fā)、匯川網(wǎng)絡(luò)營(yíng)銷、匯川企業(yè)策劃、匯川品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供匯川建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:muchs.cn

如果在編譯安裝php5.5.34的時(shí)候,沒有添加--enable-opcache參數(shù),那么在php.ini中添加一些配置參數(shù),啟用即可,php5以后的版本中已經(jīng)內(nèi)置Zend Opcache,所以無需另外安裝

cd /usr/local/php/lib
cp php.ini php.ini.bak #備份配置文件
vim php.ini,shfit+g到最后,添加如下配置

-----------------------------------------------------------------------------------------------------

[opcache]
zend_extension=opcache.so

opcache.interned_strings_buffer=8

opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1

;可用內(nèi)存,酌情而定,單位 megabytes

opcache.memory_consumption=128

;大緩存的文件數(shù)目,命中率不到100%的話,可以試著提高這個(gè)值
opcache.max_accelerated_files=4000

;Opcache 會(huì)在一定時(shí)間內(nèi)去檢查文件的修改時(shí)間,這里設(shè)置檢查的時(shí)間周期,默認(rèn)為 2,單位為秒

opcache.revalidate_freq=60

------------------------------------------------------------------------------------------------------

如果是nginx環(huán)境,重啟一下php-fpm進(jìn)程即可

查看一下Zend Opcache是否啟用

/usr/local/php/bin/php -v

最后一行帶有 with Zend OPcache等字樣 即表示啟用

Opcache的配置參數(shù)詳細(xì)解釋如下:

名字默認(rèn)可修改范圍含義
opcache.enable"1"PHP_INI_ALL是否啟用opcache
opcache.enable_cli"0"PHP_INI_SYSTEM是否在CLI(即命令行時(shí))啟用opcache
opcache.memory_consumption"64"PHP_INI_SYSTEM為opcache分配多少共享內(nèi)存,單位M
opcache.interned_strings_buffer"4"PHP_INI_SYSTEMinterned string的內(nèi)存大小
opcache.max_accelerated_files"2000"PHP_INI_SYSTEM

大緩存的文件數(shù)目。

實(shí)際上這個(gè)值會(huì)使用第一個(gè)大于你配置的數(shù)字的下列素?cái)?shù)

{ 223, 463, 983, 1979, 3907, 7963, 16229, 32531, 65407, 130987 },

如你將該值指定為400,則實(shí)際上該值為463.

opcache.max_wasted_percentage"5"PHP_INI_SYSTEM
opcache.use_cwd"1"PHP_INI_SYSTEM

如果置為1,則將當(dāng)前路徑加入到文件key中,

以避免可能產(chǎn)生的同文件名的文件key沖突

opcache.validate_timestamps"1"PHP_INI_ALL

如果置為1,則OPCACHE會(huì)自動(dòng)檢測(cè)文件的時(shí)間戳

(檢測(cè)周期為revalidate_freq),

并根據(jù)文件的時(shí)間戳來更新opcode,如果置為0,

則只能手動(dòng)去重啟opcache或

重啟webserver以使更新后的php文件生效

opcache.revalidate_freq"2"PHP_INI_ALL

opcache自動(dòng)檢測(cè)文件是否更新的周期,單位秒。

如果是0,則每次請(qǐng)求時(shí)opcache都要進(jìn)行檢測(cè)。

當(dāng)validate_timestamps為0時(shí),本指令無效。

opcache.revalidate_path"0"PHP_INI_ALL
opcache.save_comments"1"PHP_INI_SYSTEM是否保存文件中的注釋
opcache.load_comments"1"PHP_INI_ALL

是否load comments,與save_comments聯(lián)合起來使用,

如果該值為0,則即使save_comments為1,

那么php腳本中的comments也是不使用的

opcache.fast_shutdown"0"PHP_INI_SYSTEM

是否打開快速關(guān)閉,

打開時(shí)可使php在request shutdown時(shí)回收內(nèi)存快

opcache.enable_file_override"0"PHP_INI_SYSTEM

如果置為1,則每次調(diào)用file_exist() is_file() is_readable()函數(shù)時(shí),

opcache將要檢查該文件是否被cache了,

這樣增加了檢查存在性和可讀性的開銷,

但避免了當(dāng)validate_timestamps為disable時(shí)返回錯(cuò)誤文件狀態(tài)的風(fēng)險(xiǎn)。

opcache.optimization_level"0xffffffff"PHP_INI_SYSTEM運(yùn)行時(shí)控制優(yōu)化的掩碼(干什么的?)
opcache.inherited_hack"1"PHP_INI_SYSTEM5.3以前使用。5.3后廢棄
opcache.dups_fix"0"PHP_INI_ALL為解決“cannot redecllare class" 時(shí),可將其置為1
opcache.blacklist_filename""PHP_INI_SYSTEM

設(shè)置黑名單文件,符合黑名單文件中定義的php文件將不被opcache。黑名單文件的例子如下:

; Matches a specific file.
/var/www/broken.php
; A prefix that matches all files starting with x.
/var/www/x
; A wildcard match.
/var/www/*-broken.php
一行為一條規(guī)則,支持通配符,注釋以分號(hào)開頭
opcache.max_file_size"0"PHP_INI_SYSTEM被cache的文件的大size,單位bytes。0表示不限
opcache.consistency_checks"0"PHP_INI_ALL

如果置為N,N非零,則opcache會(huì)每N個(gè)請(qǐng)求核實(shí)一下cache的檢驗(yàn)和。

這會(huì)損害性能,應(yīng)該只在debug時(shí)使用

opcache.force_restart_timeout"180"PHP_INI_SYSTEM如果opcache處于非active狀態(tài),當(dāng)N秒后opcache將自動(dòng)重啟
opcache.error_log""PHP_INI_SYSTEMopcache自身的errorlog文件路徑,為空時(shí)則使用stderr
opcache.log_verbosity_level"1"PHP_INI_SYSTEM日志記錄level,默認(rèn)只有fatal error和error
opcache.preferred_memory_model""PHP_INI_SYSTEM

opcache選使用的內(nèi)存模型,為空時(shí)會(huì)選擇最適當(dāng)?shù)哪P汀?/p>

常用的有,mmap shm posix 和win32

opcache.protect_memory"0"PHP_INI_SYSTEM

運(yùn)行php腳本時(shí)保護(hù)共享內(nèi)存防止意外的寫入。

只對(duì)debug時(shí)有用。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)頁名稱:在PHP5.5.34版本中啟用ZendOpcache-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://muchs.cn/article26/deiejg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、電子商務(wù)、品牌網(wǎng)站設(shè)計(jì)面包屑導(dǎo)航、營(yíng)銷型網(wǎng)站建設(shè)虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)