Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当redis密钥过期时,自动更改值_Python_Redis - Fatal编程技术网

Python 当redis密钥过期时,自动更改值

Python 当redis密钥过期时,自动更改值,python,redis,Python,Redis,我正在使用redis的hset: hset(name, k, (level, info, t)) 如果(name,k)在一段时间后过期,我想自动设置level=-1 任何命令,python都是首选 这不能以可靠的方式完成,因为过期不会在给定时刻触发某些操作,但会在稍后的某个时间,在访问该密钥期间,或在自动清理过程中触发 实际上,对于少量密钥,这不会产生长延迟,您可能会订阅一个事件,并报告过期情况 有关订阅过期事件的信息,请参阅 编辑: 如果要修改该值,则必须运行一个客户端,该客户端已订阅,并且

我正在使用redis的hset:

hset(name, k, (level, info, t))
如果(name,k)在一段时间后过期,我想自动设置level=-1


任何命令,python都是首选

这不能以可靠的方式完成,因为过期不会在给定时刻触发某些操作,但会在稍后的某个时间,在访问该密钥期间,或在自动清理过程中触发

实际上,对于少量密钥,这不会产生长延迟,您可能会订阅一个事件,并报告过期情况

有关订阅过期事件的信息,请参阅

编辑:

如果要修改该值,则必须运行一个客户端,该客户端已订阅,并且通过修改该值对该事件作出反应

但是由于它发生时的性质(可能是对尝试使用该密钥的反应,该密钥本应在片刻前过期),此侦听代码可能来得有点晚。这取决于你的真实情况