{{format('0')}} {{format('413')}} {{format('2357')}}

【Redis】订阅 & 发布 [ 编程杂谈 ]

大数据男孩 文章 正文

想做一个技术博客,奈何实力不够
分享

明妃

{{nature("2022-08-14 17:23:19")}}更新

说明

Redis 为 订阅 & 发布 模型如下,共有 6 个命令。

[mark]()

相关命令

subscribe 订阅

subscribe channel [channels]

127.0.0.1:6379> subscribe news.it news.sport
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "news.it"
3) (integer) 1
1) "subscribe"
2) "news.sport"
3) (integer) 2 # 订阅后 客户端 挂起等待接受消息

psubscribe 模式订阅

psubscribesubscribe 的差别只有一个地方,其他都一样

  • subscribe:只能订阅指定名称的频道
  • psubscribe:可以使用通配符 指定频道
# 客户端1 使用 模式订阅
127.0.0.1:6379> psubscribe news.*
Reading messages... (press Ctrl-C to quit)
1) "psubscribe"
2) "news.*"
3) (integer) 1
# 接收到的消息
1) "pmessage"
2) "news.*"
3) "news.a"
4) "testa"
1) "pmessage"
2) "news.*"
3) "news.b"
4) "testb"

# 客户端2 发送消息
127.0.0.1:6379> publish news.a testa
(integer) 1
127.0.0.1:6379> publish news.b testb
(integer) 1

publish 发送消息

publish channel message 发送消息到指定的频道

127.0.0.1:6379> publish news.it test
(integer) 1 # 发送成功
127.0.0.1:6379> publish xx test
(integer) 0 # 发送失败

pubsub 查看订阅状态

pubsub <子命令>

  • pubsub channels:默认查看所有使用 subscribe 命令订阅的频道,可以使用匹配
127.0.0.1:6379> pubsub channels
1) "news.sport"
2) "news.it"
127.0.0.1:6379> pubsub channels news.*
1) "news.sport"
2) "news.it"
  • pubsub numsub channel [channel]:查看 指定频道 订阅数量
127.0.0.1:6379> pubsub numsub news.it news.sport
1) "news.it"
2) (integer) 1
3) "news.sport"
4) (integer) 1
  • pubsub numpat:返回使用 psubscribe命令 客户端的总数量
# 客户端 1 订阅
127.0.0.1:6379> psubscribe news.good
Reading messages... (press Ctrl-C to quit)
1) "psubscribe"
2) "news.good"
3) (integer) 1

# 客户端2 查看 psubscribe 订阅的数量
127.0.0.1:6379> pubsub numpat
(integer) 1
127.0.0.1:6379>

unsubscribe 退订指定的频道

unsubscribe channel [channels]

127.0.0.1:6379> unsubscribe news.it # 退订 news.it 频道
1) "unsubscribe" # 退订
2) "news.it" # 退订的频道名称
3) (integer) 0 # 订阅的数量

punsubscribe 退订使用 模式订阅 频道

punsubscribe channel [channels] 的差别只有一个地方,其他都一样

  • unsubscribe:只能退订指定名称的频道
  • punsubscribe:可以使用通配符 退订频道
127.0.0.1:6379> punsubscribe news.*
1) "punsubscribe" # 退订
2) "news.*" # 退订的频道名称
3) (integer) 0 # 订阅的数量
评论 0
0
{{userInfo.data?.nickname}}
{{userInfo.data?.email}}
TOP 2
Spark 2.0 单机模式与集群模式 安装

{{nature('2020-01-02 16:47:07')}} {{format('12641')}}人已阅读

TOP 3
Office 2016 Pro Plus 激活

{{nature('2019-12-11 20:43:10')}} {{format('9527')}}人已阅读

TOP 4
Linux上 MySQL 开启远程登陆的两种方法

{{nature('2019-12-26 17:20:52')}} {{format('7573')}}人已阅读

TOP 5
Linux 安装 MySQL 5.7

{{nature('2019-12-26 16:03:55')}} {{format('5017')}}人已阅读

目录

标签云

Redis 订阅/发布

一言

# {{hitokoto.data.from || '来自'}} #
{{hitokoto.data.hitokoto || '内容'}}
作者:{{hitokoto.data.from_who || '作者'}}
自定义UI
配色方案

侧边栏