Redis:如何实现发布订阅

Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接受消息。
Redis客户端可以订阅任意数量的频道!
2024-03-03T09:53:50.png

①命令:
这些命令被广泛用于构建即时通信应用,比如网络聊天室(chatroom)和实时广播、实时提醒等。
②发布订阅的实现:
1、订阅端:SUBSCRIBE

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> SUBSCRIBE dingdada  #订阅名字为 dingdada 的频道
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "dingdada"
3) (integer) 1
#等待推送的信息
1) "message"  #消息
2) "dingdada"  #来自哪个频道的消息
3) "hello world\xef\xbc\x81"  # 消息的具体内容
1) "message"
2) "dingdada"
3) "my name is dyj\x81"

2、发送端:PUBLISH

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> PUBLISH dingdada "hello world!"  #发送消息到dingdada 频道
(integer) 1
127.0.0.1:6379> PUBLISH dingdada "my name is dyj"  #发送消息到dingdada 频道
(integer) 1

③PSUBSCRIBE 命令:订阅指定频道!

PSUBSCRIBE + 频道。。 #订阅给定的模式,可多个

④PUBLISH 命令:发送消息至指定频道!

PUBLISH + 频道 +消息  #将信息 message 发送到指定的频道 channel

⑤PUNSUBSCRIBE命令:退订!

#指示客户端退订指定模式,若果没有提供模式则退出所有模式。

⑥SUBSCRIBE:订阅,同上一致。不细讲!
⑦UNSUBSCRIBE:退订,同上一致,不细讲!

Pub/Sub 从字面上理解就是发布(Publish)与订阅(Subscribe),在Redis中,你可以设定对某一个key值进行消息发布及消息订阅,当一个key值上进行了消息发布后,所有订阅它的客户端都会收到相应的消息。这一功能最明显的用法就是用作实时消息系统,比如普通的即时聊天,群聊等功能。

tag(s): none
show comments · back · home
Edit with Markdown

已有 12 条评论

  1. fgjwrthijq

    不错不错,我喜欢看 https://www.jiwenlaw.com/

    fgjwrthijq September 23rd, 2024 at 09:08 am回复
  2. auffolayit

    不错不错,我喜欢看 https://www.ea55.com/

    auffolayit October 4th, 2024 at 09:20 pm回复
  3. htxrkjkgmg

    文章的确不错啊https://www.cscnn.com/

    htxrkjkgmg October 19th, 2024 at 02:40 pm回复
  4. cbotlwdirw

    《都市鉴宝神瞳》短片剧高清在线免费观看:https://www.jgz518.com/xingkong/15538.html

    cbotlwdirw November 15th, 2024 at 02:07 am回复
  5. zufhjvumpk

    《我叫徐云龙之东山再起》国产剧高清在线免费观看:https://www.jgz518.com/xingkong/8190.html

    zufhjvumpk November 16th, 2024 at 03:02 pm回复
  6. bshsjhlsvo

    独家揭秘!传奇私服新开神龙毁灭版,震撼全服热血归来!:https://501h.com/jinbi/2024-10-26/44985.html

    bshsjhlsvo November 16th, 2024 at 03:12 pm回复
  7. csrjnyjfch

    《福田村事件》剧情片高清在线免费观看:https://www.jgz518.com/xingkong/18757.html

    csrjnyjfch November 25th, 2024 at 03:54 am回复
  8. btsebzdosj

    《兔子和公牛》喜剧片高清在线免费观看:https://www.jgz518.com/xingkong/89177.html

    btsebzdosj December 5th, 2024 at 03:39 am回复
  9. imzruswmha

    《老表发钱寒粤语》喜剧片高清在线免费观看:https://www.jgz518.com/xingkong/45671.html

    imzruswmha January 4th, 2025 at 07:37 am回复
  10. xcfshhhgth

    作者的才华横溢,让这篇文章成为了一篇不可多得的艺术品。

    xcfshhhgth February 28th, 2025 at 06:39 pm回复
  11. hjgevfvzgu

    对国际规则的解读具有前瞻性。

    hjgevfvzgu March 1st, 2025 at 08:10 am回复
  12. vjaqseddkk

    案例丰富且贴合主题,论证逻辑环环相扣。

    vjaqseddkk March 2nd, 2025 at 05:36 pm回复