[英]mod_fcgid processes and XCache lifetime
我使用mod_fcgid和Xcache 3.0.3,PHP 5.4.18。 我知道由於mod_fcgid設計,我無法使用公共共享內存,因此每個php-cgi進程在其生命周期內都使用自己的緩存。
當我打開top
並檢查php-cgi
進程時,會看到以下內容:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
14827 examplecom 20 0 230m 34m 18m S 11.0 3.4 0:07.07 php-cgi
14840 examplecom 20 0 242m 45m 18m S 0.7 4.6 0:02.74 php-cgi
14802 examplecom 20 0 237m 41m 18m S 6.3 4.2 0:11.39 php-cgi
14816 examplecom 20 0 232m 36m 18m S 1.7 3.7 0:07.75 php-cgi
14824 examplecom 20 0 231m 34m 18m S 8.6 3.5 0:06.12 php-cgi
14838 examplecom 20 0 229m 33m 17m S 0.7 3.3 0:00.89 php-cgi
14841 examplecom 20 0 228m 32m 18m S 2.0 3.3 0:01.71 php-cgi
14839 examplecom 20 0 228m 32m 18m R 8.6 3.2 0:01.58 php-cgi
然后,我檢查XCache管理面板。 每次刷新管理頁面時,我都會看到另一個進程的數據。 例如,我看到了:
XCache Cacher
XCache Cacher Module enabled
Readonly Protection disabled
Page Request Time 2013-09-04 21:59:32
Cache Init Time 2013-09-04 21:59:05
Cache Instance Id 14827
Opcode Cache enabled, 12,582,912 bytes, 1 split(s), with 8192 slots each
Variable Cache enabled, 1,048,576 bytes, 1 split(s), with 8192 slots each
Shared Memory Schemes mmap
似乎進程14827
生存27秒。 但是,當我檢查top
,該過程適用於0:07.07。
PID 14827
持續7分鍾或27秒。 哪個是正確的,或者我錯過了XCache內部功能?
更改/etc/httpd/conf.d/fcgid.conf
並使每個進程的生命周期更長是更好的選擇嗎? 還是更改默認值是個壞主意。
我可以做哪些優化來使XCache
和mod_fgid
更好地工作? (我不希望將服務器更改為nginx並遷移到mod_fastcgi)
我不知道XCache,但是...
假設我們有1個Apache進程3個php進程
所有3個php進程都在運行。 3個都具有相同的“運行時間”。 //現在的時間是0000
您需要一些頁面。 Apache連接到進程1,高速緩存已啟動。 //緩存初始化時間為0001
您刷新頁面。 Apache連接到進程#2,啟動了緩存。 //緩存初始化時間為0033
現在您有3個進程,所有3個進程都從時間0000開始運行,但是
進程1具有initCacheTime 0001
進程2具有initCacheTime 0033
進程3沒有initatedCacheTime,因為尚未使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.