使用Redis Geoadd时如何设置过期

ray*_*man 5 geospatial redis

我正在Redis上使用新的地理空间功能。我知道在后台使用ZSET。

我以这种方式添加新条目:

GEOADD" "report-geo-set" "4.78335244" "32.07223969" "jossef"
Run Code Online (Sandbox Code Playgroud)

如何将过期添加到特定记录(在我的情况下:“ jossef”)

在我的背景上?

如果API不提供,是否有解决方法?

谢谢,雷。

Ita*_*ber 6

遗憾的是,否-Redis使整个密钥而不是其各自数据结构中的值失效。地理哈希值是在顶部的“排序集”上实现的,不支持单个成员的过期。

您可以做的是维护一个额外的有序集,并为其中的每个成员存储过期时间戳记作为得分。然后,定期根据ZRANGEBYSCORE从中获取需要过期的成员,并从您的Geo Hash中“手动” ZREM各个成员。