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

Redis集群状态下的发布订阅

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

Redis发布订阅机制,在这种机制下,消息发布者向指定频道(channel)发布消息,消息订阅者可以收到指定频道的消息,同一个频道可以有多个消息订阅者,如下图:
Redis第二十九讲 Redis集群发布订阅模式以及Redis集群事务_第1张图片

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条结果,分别表示:返回值的类型

你可能感兴趣的:(Redis,redis)