您的位置:首頁技術文章
文章詳情頁

php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法實例分析

瀏覽:82日期:2022-09-11 11:31:32

本文實例講述了php加速緩存器opcache,apc,xcache,eAccelerator原理與配置方法。分享給大家供大家參考,具體如下:

一、opcache

opcache 通過將 PHP 腳本預編譯的字節碼存儲到共享內存中來提升 PHP 的性能, 存儲預編譯字節碼的好處就是 省去了每次加載和解析 PHP 腳本的開銷。

PHP 5.5.0 及后續版本中已經綁定了 opcache 擴展。 對于 PHP 5.2,5.3 和 5.4 版本可以使用PECL擴展中的 opcache 庫。

windows下的php擴展下載地址:

http://windows.php.net/downloads/pecl/releases/

打開php.ini文件,找到[opcache]

; dll地址extension=php_opcache.dll; 開關打開opcache.enable=1; 開啟CLIopcache.enable_cli=1; 可用內存, 酌情而定, 單位為:Mbopcache.memory_consumption=128; 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

二、APC

Alternative PHP Cache (APC) 是一個開放自由的PHP opcode 緩存。它的目標是提供一個自由、 開放,和健全的框架用于緩存和優化PHP的中間代碼。

下載apc擴展dll,選擇你對應的PHP版本

http://windows.php.net/downloads/pecl/releases/apc/

把下載的php_apc.dll放入php的ext擴展目錄下。

打開php.ini文件,配置如下:

[apc]extension=php_apc.dllapc.enabled=1; 共享內存塊的數目apc.shm_segments=1; 共享內存塊的大小(單位:MB)apc.shm_size=64; 優化級別,更高的值則使用更主動的優化apc.optimization=1; 源文件的數目,不確定設置為0apc.num_files_hint=0; 緩存條目在緩沖區中允許逗留的秒數apc.ttl=7200; 針對每個用戶緩存條目在緩沖區中允許逗留的秒數apc.user_ttl=7200; 緩存條目在垃圾回收表中能夠存在的秒數apc.gc_ttl=7200; 文件寫鎖apc.write_lock=on

三、xcache

xcache是一個開源的 opcode 緩存器/優化器。

下載xcache,選擇對應PHP版本的xcache

http://xcache.lighttpd.net/pub/Releases/

把php_xcache.dll放到php的ext目錄下。

打開php.ini,配置如下:

[xcache-common]extension = php_xcache.dll[xcache.admin]xcache.admin.enable_auth = Onxcache.admin.user = 'admin'xcache.admin.pass = 'md5后你的密碼'[xcache]; 選擇底層內存共享實現方案xcache.shm_scheme = 'mmap'xcache.size = 128M; 設置為CPU數xcache.count = 1; 只是個參考值xcache.slots = 8K; 緩存時間xcache.ttl = 1200; 垃圾回收的時間間隔xcache.gc_interval = 1200; 同上,針對變量緩存設置xcache.var_size = 4Mxcache.var_count = 1xcache.var_slots = 8Kxcache.var_ttl = 1200 ; 變量最大緩存時間xcache.var_maxttl = 7200xcache.var_gc_interval = 1200xcache.var_namespace_mode = 0xcache.var_namespace = ''xcache.readonly_protection = Off; 對于win系統,這里不是文件路徑xcache.mmap_path = 'xcache'xcache.coredump_directory = ''xcache.coredump_type = 0xcache.disable_on_crash = Offxcache.experimental = Offxcache.cacher = Onxcache.stat = Onxcache.optimizer = Off[xcache.coverager]xcache.coverager = Offxcache.coverager_autostart = Onxcache.coveragedump_directory = ''

四、eAccelerator

eAccelerator是一個自由開放源碼php加速器,優化和動態內容緩存,提高了php腳本的緩存性能,使得PHP腳本在編譯的狀態下,對服務器的開銷幾乎完全消除。 它還有對腳本起優化作用,以加快其執行效率。

下載eAccelerator

http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds

把下載到的eAccelerator_ts.dll放到php的ext目錄下。打開php.ini,配置如下:

[eAccelerator]extension='eAccelerator_ts.dll'eaccelerator.shm_size='16'eaccelerator.cache_dir='設置緩存目錄'eaccelerator.enable='1'eaccelerator.optimizer='1'eaccelerator.check_mtime='1'eaccelerator.debug='0'eaccelerator.log_file = '設置日志文件'eaccelerator.filter=''eaccelerator.shm_max='0'eaccelerator.shm_ttl='0'eaccelerator.shm_prune_period='0'eaccelerator.shm_only='0'eaccelerator.compress='1'eaccelerator.compress_level='9'

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php緩存技術總結》、《php面向對象程序設計入門教程》、《PHP基本語法入門教程》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

標簽: PHP
相關文章:
国产综合久久一区二区三区