我很努力地找到APC清除舊條目的方式。 特別是用戶條目,我注意到碎片迅速增加到意想不到的水平。APC何時刪除舊條目?
雖然apc.ttl和apc.user_ttl設定在3600,我發現這是沒有得到清除舊條目在APC緩存了很多。我已經反覆增加了APC的內存大小,但它只會在達到100%碎片之前持續更長時間。
那麼,爲什麼會這樣發生?其實我會認爲這是一個在APC中的錯誤,這只是不正常的行爲。我希望有些APC流程會不時清理舊的條目。
而且,可以把它得出這樣的結論,這將是更好地使用另一個緩存系統,PHP,並且只能使用APC作爲碼緩存(其中,缺乏清潔的是少的問題)?
就個人而言,我會用另一種用戶數據緩存機制,並且只能使用APC的指令緩存 - 我還沒有遇到過與APC用戶數據緩存任何問題,但其在需要時分佈式緩存用戶數據,例如內存緩存或Redis的可擴展性提供了 –
所有APC函數都有一個生存時間參數,如果您希望在某個時間之後刪除這些值,您是否應該使用該參數? – adeneo
@adeneo ttl一直在使用,但1天前創建的緩存條目和5分鐘有效的緩存條目現在仍在緩存中。 –