Alternative-Php-Cache
PHP APC - 100% 碎片化是件壞事嗎?
APC.PHP 告訴我:
Uptime 2 days, 15 hours and 13 minutes File Upload Support 1 File Cache Information Cached Files 375 ( 53.5 MBytes) Hits 377684 Misses 376 Request Rate (hits, misses) 1.66 cache requests/second Hit Rate 1.66 cache requests/second Miss Rate 0.00 cache requests/second Insert Rate 0.00 cache requests/second Cache full count 0 User Cache Information Cached Variables 573 ( 2.3 MBytes) Hits 77569 Misses 889 Request Rate (hits, misses) 0.34 cache requests/second Hit Rate 0.34 cache requests/second Miss Rate 0.00 cache requests/second Insert Rate 0.06 cache requests/second Cache full count 0 "Fragmentation: 100.00% ( 8.0 MBytes out of 8.0 MBytes in 95 fragments)"
變數:
apc.shm_segments 1 apc.shm_size 64M apc.slam_defense 0 apc.stat 1 apc.stat_ctime 0 apc.ttl 3600 apc.user_ttl 3600 apc.max_file_size 1M apc.gc_ttl 3600
環境:
Amazon EC2 微型實例,執行一個非常小的 wordpress 站點,訪問者很少,大約有 8 個外掛。
問題:
1)如果碎片變成100%,這有關係嗎?它會以任何方式影響性能嗎?
2)為什麼碎片沒有下降?
我認為當您將 ttl 設置為 > 0 時它應該會自動釋放空間
為什麼在 24 小時內處於 100% 碎片狀態,記憶體完整計數不會增加?
我使用的是 APC 版本 3.1.7 是否值得升級到最新版本?(由於依賴關係,使用最新版本似乎更複雜,所以我寧願盡可能避免)
1)如果碎片變成100%,這有關係嗎?它會以任何方式影響性能嗎?
僅當 APC 嘗試將新內容添加到 shm 時。由於您獲得了 99.9% 的命中率(唯一的失誤是最初載入文件),因此不會影響性能。
2)為什麼碎片沒有下降?
因為 ttl 僅在需要更多空間時才起作用,而目前的差距無法滿足。
3)為什麼記憶體滿計數不增加
這有點用詞不當 - 它確實計算了 apc 必須從記憶體中逐出內容以為新條目騰出空間的次數。
我使用的是 APC 版本 3.1.7 是否值得升級到最新版本?
這個問題太複雜了,無法在這裡回答。使用安全/穩定性/性能更新檔使您的安裝保持最新是一種很好的做法 - 但保持安裝組件的一致性也很重要。