安装 StackExchange.Redis
| |
Redis 开启键空间通知功能
打开 redis.conf 文件,找到 notify-keyspace-events 配置项,修改为 Ex,然后重启 redis 服务。
| |
notify-keyspace-events 的参数可以是以下字符的任意组合,它指定了服务器该发送哪些类型的通知:
| 字符 | 发送的通知 |
|---|---|
| K | 键空间通知,所有通知以 keyspace@ 为前缀 |
| E | 键事件通知,所有通知以 keyevent@ 为前缀 |
| g | DEL 、 EXPIRE 、 RENAME 等类型无关的通用命令的通知 |
| $ | 字符串命令的通知 |
| l | 列表命令的通知 |
| s | 集合命令的通知 |
| h | 哈希命令的通知 |
| z | 有序集合命令的通知 |
| x | 过期事件,每当有过期键被删除时发送 |
| e | 驱逐事件,每当有键因为 maxmemory 政策而被删除时发送 |
| A | 参数 g$lshzxe 的别名 |
.net 订阅键过期事件
| |
- 0 表示数据库索引
- expired 表示过期事件
- keyevent 表示键
- keyspace 表示键空间
通过订阅 __key*__: * 即可接收到所有操作的消息。
expired 可以用 * 代替,键过期回调事件时,key 为 keyevent@0:expired 。
可订阅的所有键空间事件参考: keyspace 所有键空间事件通知