我对Redis缓存的行为有疑问。请澄清 -
说,对于一个键" xyz"如果TTL设置为15分钟。 并且,如果服务器级别的驱逐策略设置为" allkeys-lru"。过期的项目(TTL的原因)EXPIRE或WAIT直到内存已满?
答案 0 :(得分:5)
驱逐政策仅适用于超出最大内存时发生的情况。只要您处于内存限制范围内,易失密钥将在它们过期时到期。
一旦你的内存已满,LRU算法就会启动,驱逐最近最少使用的密钥。在allkeys-lru
中,密钥是否过期并不重要以及什么是TTL - 最少使用的项目将被逐出。在volatile-lru
中,只有使用此算法才能驱逐到期密钥。