Redis发布订阅模式
发布订阅是一种消息通信模式:发送者发送消息,订阅者接收消息
基于频道的发布/订阅
发布者可以向指定的频道(channel)发送消息;订阅者可以订阅一个或者多个频道,所有订阅此频道的订阅者都会收到此消息。
发布者发送消息
127.0.0.1:6379> publish channel:1 hi如上,这样消息就发送出去了。这条命令的返回值表示接收这条信息的订阅者数量。发出去的消息不会被持久化,也就是有客户端订阅此channel后,只能收到后续发布的消息,之前的消息接收不到
订阅者订阅的命令为subscribe,可以同时订阅多个频道
127.0.0.1:6379> subscribe channel:1执行上面命令后,客户端会进入订阅状态,处于此状态下客户端不能使用除subscribe、ubsubscribe、psubscribe 和 pubnsubscribe 这四个 属于"发布订阅"之外的命令,否则会报错
基于模式的发布订阅
如果有某个/某些模式和这个频道匹配的话,那么所有订阅这个/这些频道的客户端也会收到信息
其实就是通配符实现的,可以订阅比如apple*频道,即apple1,appleapple等频道发送消息,订阅apple * 的用户都可以收到消息。
最后更新于
这有帮助吗?