有没有一种快速的方法来发现 memcache 上特定键的年龄?
问问题
1742 次
2 回答
5
Memcached 不会保留有关何时创建密钥的信息,因此除非您有某种客户端逻辑,否则无法执行此操作。如果这对您很重要,那么您可以简单地将创建时间作为前缀添加到键的实际值(值 = 时间 + 数据)。然后,当您从 memcached 获取数据时,您可以将值拆分为相应的数据片段。
于 2012-05-29T04:00:10.273 回答
2
OP,您是指知道缓存条目的年龄吗?您可以将最新更新的时间戳与实际值一起存储:
from datetime import datetime
def put_value(key, value):
timestamp = datetime.utcnow()
entry = (timestamp, value)
memcache.add(key, entry)
def get_value(key):
entry = memcache.get(key)
if not value:
return None
_, value = entry
return value
def get_age(key):
entry = memcache.get(key)
if not value:
return None
timestamp, _ = entry
age = datetime.utcnow() - timestamp
return age
于 2017-01-19T17:45:55.623 回答