Redis TTL vs";“所有钥匙lru”;驱逐政策
我对Redis cache的行为有疑问。请澄清- 例如,如果TTL设置为15分钟,则按键“xyz”。Redis TTL vs";“所有钥匙lru”;驱逐政策,redis,Redis,我对Redis cache的行为有疑问。请澄清- 例如,如果TTL设置为15分钟,则按键“xyz”。 并且,如果服务器级别的逐出策略设置为“allkeys lru”。过期的项目(TTL的原因)是否过期或等待内存已满?退出策略仅适用于超出最大内存时发生的情况。只要您在内存限制内,易失性密钥就会在应该过期的时候过期 一旦你的内存满了,一个LRU算法就会启动,逐出最近使用最少的密钥。在allkeys lru中,密钥是否过期以及TTL是什么并不重要-使用最少的项将被逐出。在volatile lru中使用
并且,如果服务器级别的逐出策略设置为“allkeys lru”。过期的项目(TTL的原因)是否过期或等待内存已满?退出策略仅适用于超出最大内存时发生的情况。只要您在内存限制内,易失性密钥就会在应该过期的时候过期
一旦你的内存满了,一个LRU算法就会启动,逐出最近使用最少的密钥。在
allkeys lru
中,密钥是否过期以及TTL是什么并不重要-使用最少的项将被逐出。在volatile lru中
使用此算法只会收回过期的密钥。回答得好。也许这是一个反问,但是如果我所有的钥匙都是易变的(它们有一个超时),那么volatile lru
和allkeys lru
策略都有相同的效果,对吗?Redis如何识别lru钥匙?@AminShojaei它对一组钥匙的访问时间IIRC进行了采样。如果没有易变钥匙会发生什么?它将回退到allkeys以运行lru算法?