加速magento! 什麼是Zend Opcache
什麼是Opcache
Zend Opcache通過opcode做cache,讓php有快的執行過程,它將腳本存在共享內存中供以後使用,避免掉從磁碟讀取代碼進行編譯的時間消秏,同時它還應用了一些代碼優化模式,使代碼執行更快。
什麼是opcode
當編譯器完成編譯時 ,它會將生成直接可以執行的代碼(Operate Code, opcode).
Opcode cache的目地是避免重復編譯,減少消耗cpu和記憶體,如果瓶頸不在cpu跟記憶體,而是在I/O的話,那就必需想辦法減少Disk的I/O了
Optimizer+ 與APC比較
Optimizer在2013的3月已經改名叫Opcache
Php wiki上有提到,zend opcache要整合到 php5.5中,做為APC的競爭對手,新生的Zend Opache很有可能取代APC的位置
1、性能 – opcache使終高於APC,每秒鐘處理的請求數量高5~20%,測試結果
2、支持新版的PHP
3、可靠性 – opcache有可選的損壞檢查能力,可以防止因資料損壞而導致服務器崩潰
4、更好的兼容性 – Opcache將會支援php所有的版本
APC 相對 OPTIMIZER+ 的優勢
1、APC有資料緩存api,但opcache沒有
2、APC能夠回收舊的無效的腳本佔用的內存。它有內存管理器,可以將那些不再使用的腳本關聯的內存進行回收。
但opcache不同,它將這樣的內存標記為”髒的”,但不會回收它們,一但”髒的”內存佔用到一定的比例時,opcache將會自已重新啟動,APC有相對穩定的優勢
介紹完了之後,就看如何啟動Opcache,以下是php5及ubuntu的環境
Apache web-servers
/etc/php5/apache2/php.ini
Nginx web-servers with PHP-FPM
/etc/php5/fpm/php.ini
Enable the OPcache
;opcache.enable=0
Change to:
pcache.enable=1
Apache Web-Servers
service apache2 restart
Nginx Web-Servers
service nginx restart
之後查phpinfo可以知道是否啟用成功
我要留言