在Redis中是否可以将TTL(生存时间)设置为不是针对特定键,而是针对某个成员设置? 我正在使用由Redis文档提出的标签结构 – 数据是简单的键值对,标签是包含与每个标签对应的键的集合,例如 > SETEX id:id_1 100 'Lorem ipsum' OK > SADD tag:tag_1 id:id_1 (integer) 1 密钥id:id_1将按预期过期,但我看不到从tag:tag_1集合中删除相应成员的有效方法。 我想到的一个方法是使用包含脚本的cron作业,该脚本会定期从集合中删除过期的密钥 – 将所有标签名称添加到另一个集合,然后迭代所有标签,然后遍历每个标签对应的所有id,并检查是否相应的密钥存在 – 如果没有,则调用SREM 。 我不认为这将是一个有效的方法,我可能希望保持标签尽可能干净,因为这些集合的大小可能会影响多个标签( SINTER )的search性能。 有没有更“内在”的方式?
有没有办法在PostgreSQL的数据条目上设置某种“过期”时间? 我正在考虑Redis中相当于“EXPIRE”的内容 。 我不想存储时间戳,然后手动编写某种cron作业来检查哪些条目已过期。 我试图找出PostgreSQL中是否有任何可以提供这种function的本地特性,或者是否有必要为将来的版本请求这样的特性。