[英]What happens to PHP sessions stored in Memcached if the Memcache instance hits its memory limit?
我們正在使用內存緩存群集作為多個Web服務器的會話存儲。
不過,我很好奇,如果我們設置一個較長的會話期滿,並且memcache實例沒有大量的RAM,將會有什么后果。
如果memcache達到其內存限制,是否會自動釋放RAM(從而刪除會話)? 或者是其他東西?
Memcached將使用最近最少使用(LRU)驅逐來釋放內存。 因此,不應將Memcached或與此相關的任何高速緩存用於壽命長的會話(對於壽命短的會話很好)。
對於長壽命的會話,您應該使用永久存儲,例如數據庫。 如果性能是問題,則可以通過緩存會話查詢來模擬直寫緩存(例如Django的cached_db
會話存儲的功能)。 我不知道PHP中有任何直寫式實現,但是它很容易實現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.