redis服务器怎么订阅频道_Redis 发布订阅用法

一、发布订阅模型

发布订阅其作用是为了减少依赖关系,通常也叫观察者模式。主要是把耦合点单独抽离出来作为第三方,隔离易变化的发送方和接收方。

发送方:只负责向第三方发送消息。(杂志社把读者杂志交给邮局)

接收方:被动接收消息。(1:向邮局订阅读者杂志,2:去门口接邮过来的杂志)

第三方:存储订阅杂志的接收方,并在杂志过来时送给接收方。 (邮局)

二、redis中的发布订阅

redis实现完整的发布订阅范式,就是说任何一台redis服务器,启动后都可以当做发布订阅服务器。

1、普通订阅

a、订阅bar频道。格式:subscribe name1 name2。

成功订阅回复,分别对应订阅类型、订阅频道、订阅数量。

2568d7b758746c2373542b1b46257e7b.png

b、发布bar频道。格式:publish channelname message。

a6aeacca9fb47bad144eccfb16f323b3.png

c、订阅bar频道的回复,分别对应消息类型,频道,消息。

45a05774b5e152e1a9b96fd886d255b2.png

2、模式订阅

redis支持模式匹配订阅,*为模糊匹配符。

订阅所有频道的消息:psubscribe *

订阅以news.开头的所有频道:psubscribe news.*

3、取消订阅

取消普通订阅和取消模式订阅的命令。

unsubscribe bar

punsubscribe ba*

取消在官方提供的连接工具中无法模拟的。

4、查看订阅信息

命令:pubsub channels [pattern],查看订阅消息是redis在2.8中新增加的命令之一。

4.1、返回当前服务器被订阅的所有频道。

127.0.0.1:6379> pubsub channels

1) "bar"

4.2、指定匹配参数,返回与模式匹配的所有频道。

127.0.0.1:6379> pubsub channels ba*

1) "bar"

4.3、接受任意多个频道作为输入参数,返回这些频道的订阅者数量。

127.0.0.1:6379> pubsub numsub bar bar2

1) "bar"

2) (integer) 1

3) "bar2"

4) (integer) 0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值