将Redis中的TTL设置为具有命名空间的键

时间:2017-12-13 12:22:10

标签: spring redis jedis

我们需要为我们的java spring应用程序中以paticular命名空间开头的所有redis缓存键设置生存时间

密钥格式为“abc:xyz:12345 ..”,我们希望在所有以名称空间“abc”开头的密钥上设置默认TTL。命名空间是以编程方式构建的。

现在从我所看到的,Redis中不存在设置默认TTL的概念,我们必须单独为每个键设置它。

但是有一个地方(例如在RedisTemplate或RedisCaheManger等中)我们可以配置它,以便使用默认的ttl而不是-1来创建每个键

我们尝试了一些使用Redis缓存管理器和Keyspace设置的方法(keyspaceSettings.setTimeToLive(长))但是没有成功

是否有可能使用Redis缓存管理器(就像在此stackoverflow链接中提到的那样:Spring Data Redis Expire Key)使用setDefaultExpiration或setExpires方法为一组键设置ttl。 它可以用来设置生成的所有密钥的TTL,还是指这里设置“缓存”到期而不是“密钥”到期。

如果有人试图实施默认TTL,或者如果您有方法我们可以尝试,我们将非常感激。

0 个答案:

没有答案