python获取rediskey过期的信息

更新时间:2023-06-25 17:24:38 阅读: 评论:0

python获取rediskey过期的信息1、使⽤redis key 过期通知,需开启key过期通知功能:
登录进⼊redis-cli 客户端,执⾏:
config t notify-keyspace-events Ex
【或者启动redis前在f 添加配置:notify-keyspace-events "Ex" //过期时间监听⽣效】
2、启动监听key过期
登录进⼊redis-cli 客户端,执⾏:( 订阅⼀个或者多个符合pattern格式的频道)
PSUBSCRIBE __keyevent@*__:expired
然后该客户端处于监听状态,如果有key过期,则列出
Redis中发布与订阅只有简单的6个命令。即:
美国打工订阅⼀个或者多个符合pattern格式的频道
PSUBSCRIBE pattern [pattern ...]
发布消息到chanel中
PUBLISH channel message
查看订阅与发布系统状态
小于
PUBSUB subcommand [argument [argument ...]]
退订所有符合格式的频道
PUNSUBSCRIBE [pattern [pattern ...]]
订阅⼀个或者多个频道
SUBSCRIBE channel [channel ...]
取消订阅频道
UNSUBSCRIBE [channel [channel ...]]
--------------------头像卡通男生
测试:
3、另外开启⼀个客户端,添加test 为key,并设置5秒过期入盆后多久生
tex test 5 test
5秒后,监听窗⼝显⽰:
pmessage
__keyevent@*__:expired
__keyevent@0__:expired
test
4.接下来上python代码
#-*- coding:utf-8 -*-
import time
from redis import StrictRedis土豆炖猪肉
青笋炒肉#创建redis连接
redis = StrictRedis(host='localhost', port=6379)
#创建⼀个pubsub对象,该对象订阅⼀个频道并侦听新消息铁柱磨成针
pubsub = redis.pubsub()
#pubsub.psubscribe('__keyspace@0__:*')
# 发布监听key失效的订阅
pubsub.psubscribe("__keyevent@0__:expired")
#通过⽆限循环等待事件大姨妈来了吃什么
print('Starting message loop')
for data in pubsub.listen():
print(data)
此时我们运⾏python代码,然后开⼀个redis-cli,搞⼀个keysvalue
tex keys 5 value
5秒以后keys会过期
python会打印
{'type': 'pmessage', 'pattern': b'__keyevent@0__:expired', 'channel': b'__keyevent@0__:expired' 'data': b'keys'}

本文发布于:2023-06-25 17:24:38,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1054555.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:订阅   频道   监听   发布   客户端   状态   对象   符合
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图