springboot+redis发布/订阅

我自己用的本机是mac电脑,安装redis后,配置文件地方:/usr/local/etc/redis.conf

修改notify-keyspace-events "AKE",默认是空字符串 表示关掉模式,我们这里开启AKE模式,表示全部开启。

 带配置文件启动redis-server /usr/local/etc/redis.conf,用redis-cli去查看是否生效,查看命令:

CONFIG GET notify-keyspace-events

事件的类型

    对于每个修改数据库的操作,键空间通知都会发送两种不同类型的事件消息:keyspace 和 keyevent。以 keyspace 为前缀的频道被称为键空间通知(key-space notification), 而以 keyevent 为前缀的频道则被称为键事件通知(key-event notification)。

    事件是用  __keyspace@DB__:KeyPattern 或者  __keyevent@DB__:OpsType 的格式来发布消息的。

    DB表示在第几个库;KeyPattern则是表示需要监控的键模式(可以用通配符);OpsType则表示操作类型。因此,如果想要订阅特殊的Key上的事件,应该是订阅keyspace。

    比如说,对 0 号数据库的键 mykey 执行 DEL 命令时, 系统将分发两条消息, 相当于执行以下两个 PUBLISH 命令:

    PUBLISH __keyspace@0__:sampleKey del

    PUBLISH __keyevent@0__:del sampleKey

    订阅第一个频道 __keyspace@0__:mykey 可以接收 0 号数据库中所有修改键 mykey 的事件, 而订阅第二个频道 __keyevent@0__:del 则可以接收 0 号数据库中所有执行 del 命令的键。

我们来订阅下,命令:PSUBSCRIBE __keyspace@1__:EGW_GLOBAL_INTERFACE*

 我们再开启一个客户端,写点东西进去:我们把类型type的key设置为GET

HSET EGW_GLOBAL_INTERFACE:localhost:3909:/get_networking type GET

 回到第一个客户端,就可以看到订阅的信息了:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值