2013-05-04 62 views
3

有沒有辦法讓Redis爲特定的密鑰選擇一個LRU(最近最少使用的)驅逐策略?我想要一組密鑰是持久的,如果沒有足夠的內存,永遠不會被驅逐。另一方面,如果內存不足,我希望另一組密鑰可以自由驅逐。如何讓Redis僅爲部分密鑰選擇LRU驅逐策略?

+0

Redis允許您在關鍵級別設置timeToLive。您可以選擇應該在應用程序中過期的密鑰並設置適當的過期時間。 – 2013-05-04 03:38:42

回答

5

Redis的驅逐策略可能對您的情況有好處。 您可以設置maxmemory政策揮發性-LRU導致的Redis到:

刪除有過期使用LRU算法

這意味着設置密鑰未設定TTL鍵是不易變的,因此不會被驅逐,但具有TTL的密鑰將按照最近最近使用的順序被刪除。

其實,揮發LRU是默認的策略,因此,所有你需要做的是確保TTL設置爲您願意當內存變滿,以丟了鑰匙。