Redis的消息发布和订阅
Author:SimpleWu
GitHub-redis
什么是消息发布和订阅?
Redis 发布订阅(pub/sub)是一种进程间的消息通信模式:
- 发送者(pub)发送消息
- 订阅者(sub)接收消息
Redis 客户端可以订阅任意数量的频道。
但是一般不会使用redis来做消息发布和订阅,由消息中间件来完成。
当有新消息通过 PUBLISH 命令发送给频道 XXX 时, 这个消息就会被发送给订阅它的所有客户端
指令 | 描述 |
---|---|
PSUBSCRIBE pattern [pattern ...] | 订阅一个或多个符合给定模式的频道。 |
PUBSUB subcommand [argument [argument ...]] | 查看订阅与发布系统状态。 |
PUBLISH channel message | 将信息发送到指定的频道 |
PUNSUBSCRIBE [pattern [pattern ...]] | 退订所有给定模式的频道。 |
SUBSCRIBE channel [channel ...] | 订阅给定的一个或多个频道的信息。 |
UNSUBSCRIBE [channel [channel ...]] | 指退订给定的频道。 |
订阅频道:
SUBSCRIBE p1 p2 p3
使用SUBSCRIBE同时订阅了3个频道;
发布消息:
PUBLISH hello
这个时候所有订阅了p1这个频道的客户端都会收到一个hello