Redis订阅发布
理解
就类似于观察者模式,一旦观察主题发生变化,所有观察者都应该收到消息
普通订阅
SUBSCRIBE channel [channel ...]:订阅给定的一个或多个频道的信息。
发布
PUBLISH channel message:将信息 message 发送到指定的频道 channel 。
模式订阅
PSUBSCRIBE pattern [pattern ...]:订阅一个或多个符合给定模式的频道。
每个模式以 * 作为匹配符,比如 it* 匹配所有以 it 开头的频道( it.news 、 it.blog 、 it.tweets 等等), news.* 匹配所有以 news. 开头的频道( news.it 、 news.global.today 等等),诸如此类。
订阅发布模式的应用场景
1. 普通的即时聊天,群聊等功能
2. 如果你要在内存里面做一个读写分离的程序,为了维持数据的完整性,你是不是需要保证在写入的时候,也要分发到各个读内存的程序中呢
参考:
http://www.cnblogs.com/huangxincheng/p/5002794.html
https://www.zhihu.com/question/34978717
http://www.cnblogs.com/mushroom/p/4470006.html