对于Redis这样的缓存,有没有关于密钥无效的最佳实践?我应该在TTL到期后让密钥掉出来吗?还是应该对有问题的密钥调用delete来从缓存中删除该密钥?
主动调用删除操作会增加负载并损害缓存的吞吐量吗?
当您将Redis用作缓存时,您似乎在询问如何在Redis中处理内存管理。Redis实现了一些配置maxmemory
、maxmemory-policy
、maxmemory-samples
、replica-ignore-maxmemory
和active-expire-effort
。有关这些方面的更多详细信息,请参阅您的版本的自我文档。
Redis配置允许您在CPU、内存和延迟方面进行权衡,而无需进行外部内存管理。这样,当您的应用程序意识到状态更改时,DEL
可以用于使密钥无效。TTL集合可以与一些内存管理策略一起使用。