我有一个场景,我计划设置 Azure Redis 缓存条目过期时间,以确保我们不会保留在特定时间点之后已知没有价值的数据,例如
cache.StringSet(this.cacheId, this.Serialize(), expiry);
此外,其目的是防止 Redis 缓存性能受到包含比实际使用的条目更多的条目的任何影响。
Azure Redis 是否会在条目达到定义的过期时间时刷新它们,还是仅在需要减少内存占用和后端持久存储时才这样做?
我有一个场景,我计划设置 Azure Redis 缓存条目过期时间,以确保我们不会保留在特定时间点之后已知没有价值的数据,例如
cache.StringSet(this.cacheId, this.Serialize(), expiry);
此外,其目的是防止 Redis 缓存性能受到包含比实际使用的条目更多的条目的任何影响。
Azure Redis 是否会在条目达到定义的过期时间时刷新它们,还是仅在需要减少内存占用和后端持久存储时才这样做?
Azure Redis 在到期时使用标准 Redis 行为,有关详细信息,请参阅Redis 文档。这是该页面的引用...
Redis 如何使密钥过期
Redis 密钥以两种方式过期:被动方式和主动方式。仅当某些客户端尝试访问密钥并且发现密钥超时时,密钥才会主动过期。
当然这还不够,因为有过期的密钥将永远不会被再次访问。这些密钥无论如何都应该过期,因此 Redis 会定期在设置过期的密钥中随机测试几个密钥。所有已经过期的键都会从键空间中删除。