首页 > 学院 > 开发设计 > 正文

Redis消息订阅发布

2019-11-06 06:54:50
字体:
来源:转载
供稿:网友

Redis 消息订阅发布

一、是什么

进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。

二、命令

序号 命令 描述
1 PSUBSCRIBE pattern [pattern …] 订阅一个或多个符合给定模式的频道
2 PUBSUB subcommand [argument [argument …]] 查看订阅与发布系统状态
3 PUBLISH channel message 将消息发送到指定的频道
4 PUNSUBSCRIBE [pattern [pattern …]] 退订所有给定模式的频道
5 SUBSCRIBE channel [channel …] 订阅给定的一个或多个频道的信息
6 UNSUBSCRIBE [channel [channel …]] 指退订给定的频道

三、案例

先订阅后发布后才能收到消息

1 可以一次性订阅多个,SUBSCRIBE c1 c2 c3

2 消息发布,PUBLISH c2 hello-redis

3 订阅多个,通配符 *, PSUBSCRIBE new*

4 收取消息, PUBLISH new1 redis2015

客户端 A

127.0.0.1:6379> SUBSCRIBE c1 c2 c3Reading messages... (PRess Ctrl-C to quit)1) "subscribe"2) "c1"3) (integer) 11) "subscribe"2) "c2"3) (integer) 21) "subscribe"2) "c3"3) (integer) 3

客户端 B

127.0.0.1:6379> PUBLISH c2 hello-redis(integer) 1127.0.0.1:6379> PUBLISH c1 hello1122(integer) 1

客户端 A 接收到消息

1) "message"2) "c2"3) "hello-redis"1) "message"2) "c1"3) "hello1122"

客户端 C

127.0.0.1:6379> PSUBSCRIBE new*Reading messages... (press Ctrl-C to quit)1) "psubscribe"2) "new*"3) (integer) 1

客户端 D

127.0.0.1:6379> PUBLISH new1 redis2015(integer) 1127.0.0.1:6379> PUBLISH new13 redisnews2016(integer) 1

客户端 C 接收消息

1) "pmessage"2) "new*"3) "new1"4) "redis2015"1) "pmessage"2) "new*"3) "new13"4) "redisnews2016"
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表