Redis发布订阅模式
Redis提供了基于“发布/订阅”模式的消息机制,在这种模式下,消息发布者和订阅者不进行直接通信,发布者向指定频道(channel)中发布消息,订阅该频道的客户端都可以接收该消息。
Redis中提供若干命令支持发布订阅功能:
-
发布消息给指定频道: publish channel message
-
从一个或多个频道中订阅消息:subscribe channel [channel …]
-
取消订阅指定的频道:unsubscribe [channel [channel …]]
-
按照模式订阅频道:psubscribe pattern [pattern …]
-
按照模式取消订阅频道:punsubscribe [pattern [pattern …]]
-
查阅订阅的频道:
查看活跃频道:pubsub channels [pattern]
查看频道订阅数:pubsub numsub [channel …]
查看模式订阅数:pubsub numpat
测试发布订阅:
客户端在执行订阅命令后进入订阅状态,只能接受subscribe、psubscribe、unsubscribe、punsubscribe四个命令。新开启的订阅客户端无法收到频道之前的消息。
测试查询订阅:
使用场景:聊天室、公告牌、服务之间利用信息解耦等