簡體   English   中英

mod_fcgid進程和XCache生存期

[英]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並使每個進程的生命周期更長是更好的選擇嗎? 還是更改默認值是個壞主意。

我可以做哪些優化來使XCachemod_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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM