1.Redis键空间通知
1.配置
配置文件项目 notify-keyspace-events
使用config set 可以设置配置项并且实时生效
比如:要设置键过期通知可以先使用命令配置config set notify-keyspace-events xE,再在配置文件配置notify-keyspace-events “xE” ,这样即可以实时生效,重启以后配置也不会改变。
2.监听
普通的subscribe无法监听到键空间通知,要使用psubscribe。
在监听键过期通知时,如果设置键过期时间为0(expire key 0),等于直接将键del,则不会出发过期通知。
3.channel规则
键事件通知
__keyevent@数据库编号__:命令(支持通配符)
键空间通知
__keyspace@数据库编号__:命令(支持通配符)
比如:要监听0号数据库的过期命令
__keyevent@0__:expired
2.Redis批量删除key
redis-cli EVAL "return redis.call('del', unpack(redis.call('keys', ARGV[1])))" 0 'keyprefix*'