Redis-x64-3.2 键空间通知(keyspace notification)

2021/8/24 19:36:12

本文主要是介绍Redis-x64-3.2 键空间通知(keyspace notification),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录
  • 前言
  • 具体实现
    • 键空间通知设置的两种方式
      • 1.命令行设置
      • 2.修改配置文件 redis.windows.conf
    • Redis-x64-3.2 键空间通知的操作

前言

Redis2.8 后可以通过键空间通知(设置 notify-keyspace-events)接收那些以某种方式改变了Redis数据空间的事件通知,关于 Redis 键空间通知的文章有很多,这里只是记录个人在 Redis-x64-3.2 版本下实现过程中出现的问题。


具体实现

键空间通知设置的两种方式

1.命令行设置

  • redis启动后进入redis-cli模式
  • 命令行设置 notify-keyspace-events
config set notify-keyspace-events Ex
  • Ex说明
Ex,E(Keyevent events)代表键事件通知,x(Expired events)代表过期事件,每当有过期键被删除时发送
  • 注:该设置会在 redis 终端关闭后失效

2.修改配置文件 redis.windows.conf

  • 修改键空间通知事件 notify-keyspace-events
修改 - 887行 notify-keyspace-events Ex  // 取消注释
修改 - 892行 notify-keyspace-events ""  // 注释

在这里插入图片描述

  • 注意事项:
1、notify-keyspace-events "" 为默认配置,需注释,否则键空间通知无法生效
2、notify-keyspace-events Ex 需顶格(不能有空格),否则启动会报错 " Invalid argument during startup: unknown conf file parameter  "

Redis-x64-3.2 键空间通知的操作

  • 启动reids
redis-server ./redis.windows.conf

在这里插入图片描述

  • 新打开一个终端,添加过期事件订阅
redis-cli 
psubscribe __keyevent@0__:expired

在这里插入图片描述

  • 新打开一个终端,添加过期事件
redis-cli 
setex name 10 coisini // 添加一个 key为name 过期时间为10s 值为coisini 的键

在这里插入图片描述

  • 添加过期事件订阅经10秒后输出如下信息:

在这里插入图片描述

  • Then:过期Key订阅成功了。

- End -
梦想是咸鱼
关注一下吧


这篇关于Redis-x64-3.2 键空间通知(keyspace notification)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程