昆明网站建设优化技术,买衣服的网站排行榜,石家庄精准推广,哪个网站发布招聘信息免费前言
使用redis进行大数据量信息存储时#xff0c;如存储百万级别设备/通道信息#xff0c;如果我们想获取设备/通道是否失效#xff0c;常规的方法是定时获取#xff0c;但是这样对于应用来说太消耗性能。
redis提供了一种key事件监听的机制#xff0c;应用可以监…前言
使用redis进行大数据量信息存储时如存储百万级别设备/通道信息如果我们想获取设备/通道是否失效常规的方法是定时获取但是这样对于应用来说太消耗性能。
redis提供了一种key事件监听的机制应用可以监听key失效事件当key失效时redis会将key失效事件回调通知。
修改
1修改redis.conf配置
# 修改前
# notify-keyspace-events# 修改后
notify-keyspace-events Ex# 屏蔽
# notify-keyspace-events 重启redis
systemctl restart redis
# 如果修改云redis参数无需重启示例
1打开redis-cli启动监听示例包含监听到的事件
[rootlocalhost redis]# redis-cli -p 6379
127.0.0.1:6379 PSUBSCRIBE channel __keyevent*__:expired
Reading messages... (press Ctrl-C to quit)
1) psubscribe
2) channel
3) (integer) 1
1) psubscribe
2) __keyevent*__:expired
3) (integer) 2# 2s后收到key为“name”过期失效的消息
1) pmessage
2) __keyevent*__:expired
3) __keyevent0__:expired
4) name2启动另一个redis-cli设置一个有效期为2s的key
[rootlocalhost ~]# redis-cli -p 6379
# 设置name的有效期为2s,value为1
127.0.0.1:6379 SETEX name 2 1
OK
127.0.0.1:6379