Redis第二十九讲 Redis集群发布订阅模式以及Redis集群事务

本文详细介绍了Redis集群环境下的发布订阅模式,包括频道和模式的订阅与取消订阅,以及其底层原理。同时,文章阐述了Redis集群不支持的事务特性,解释了单节点事务的命令如Watch、Multi、EXEC和Discard,以及Redis事务的执行特点和潜在风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis集群状态下的发布订阅

在Redis的几个基本数据结构介绍中,有讲过List数据结构,可以使用List的阻塞特性实现订阅消费,关于Redis的底层数据结构可以参考我的这篇博客:Redis第六讲 Redis之List底层数据结构实现
底层数据结构基本操作可以看我的这篇博客,Redis第十五讲 Redis常用数据结构的基本操作

Redis发布订阅机制,在这种机制下,消息发布者向指定频道(channel)发布消息,消息订阅者可以收到指定频道的消息,同一个频道可以有多个消息订阅者,如下图:
在这里插入图片描述

Redis发布订阅/生产者消费者

在Redis中,发布订阅相关命令有:

- 发布消息
- 订阅频道
- 取消订阅
- 按照模式订阅
- 按照模式取消订阅
- 查询订阅信息
  • 发布消息的命令是publish,语法是:
publish 频道名称 消息


192.168.36.128:6382> publish channel:shanghai "tody is sunny"
(integer) 

返回的结果是订阅者的个数,上例中没有订阅者,所以返回结果为0。

  • 订阅消息的命令是subscribe,订阅者可以订阅一个或者多个频道,语法是:

192.168.36.128:6382>  subscribe channel:shanghai
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel:shanghai"
3) (integer) 1

返回结果中有3条,分别表示:返回值的类型(订阅成功)、订阅的频道名称、目前已订阅的频道数量。当订阅者接受到消息时,就会显示:

1) "message"
2) "channel:shanghai"
3) "tody is sunny"

同样也是3条结果,分别表示:返回值的类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员路同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值