使用APC緩存PHP opcode

1.  關於版本php

個人php版本是5.3.10  最開始使用 APC-3.1.8  編譯成功,可是 php -m 得不到擴展 , 換成 APC-3.1.9  後解決。正則表達式

2.  關於配置緩存

apc.cache_by_default = 0 的時候 須要 filters 來匹配開啓的文件  通常這兩個是配套使用服務器

apc.cache_by_default 默認啓用緩存。1表示「啓用」,0表示「禁用」
apc.filters 根據逗號分隔的POSIX正則表達式判斷文件須要緩存仍是不須要緩存。以a+開頭的正則
表達式將強制APC不緩存與此正則表達式匹配的任何文件。以a-開頭的正則表達式將強制
APC緩存與此正則表達式匹配的任何文件
apc.stat 啓用或禁用APC對於全部請求PHP腳本是否有更改的檢查。每次調用腳本時均會執行此
過程。若是禁用該設置,在對PHP腳本進行任意更改後均須要從新啓動WEB服務器以
清除緩存並更改腳本內容。0=禁用,1=啓用,默認1
apc.enabled 啓用或禁用APC緩存。0=禁用,1=啓用,默認1
apc.shm_size 設置APC容許使用的共享內存大小,此值以兆字節爲單位
apc.shm_segments 設置可用的共享內存段總數
apc.include_once_override 啓用或禁用include_once和require_once的優化。啓用該設置時,可減小PHP內部函數進行的額外系統調用。0=禁用,1=啓用,默認0
apc.optimization 設置優化級別。0=禁用優化功能
apc.num_files_hint 設置你認爲須要緩存的文件數。默認值1000,若是不肯定文件數,能夠設置0
apc.ttl 設置文件存儲在緩存中的過時時間,以秒爲單位。
apc.write_lock 開啓該設置將強制單個進程緩存特定的腳步。適用於必須緩存多個文件的大流量WEB服務器或應用程序

3.  cli 模式下的變量緩存 開啓  框架

apc.enable_cli = 1yii

4.  性能  yii框架  xhprof測試結果ide

沒有開啓以前是這樣函數

YiiBase::autoload   Inc: 29.730 ms (18.1%)  Excl: 0.867 ms (0.5%)  35 total calls工具

開啓以後  一樣 35次load操做性能

YiiBase::autoload   Inc: 6.477 ms (5.5%)     Excl: 0.454 ms (0.4%)   35 total calls

耗時明顯下降  

 

5. 變量緩存

$bar = 'BAR';
apc_store('foo', $bar);
var_dump(apc_fetch('foo'));

6. 進程通訊工具

嘗試了下 多進程時的APC變量緩存,  主進程是能夠和子進程共享的,說明 apc能夠做爲進程通訊工具, 這點太讚了。

相關文章
相關標籤/搜索