如何在 Golang 中使用 Redis 订阅/发布
订阅,取消订阅和发布实现了发布/订阅消息范式(引自wikipedia),发送者(发布者)不是计划发送消息给特定的接收者(订阅者)。而是发布的消息分到不同的频道,不需要知道什么样的订阅者订阅。订阅者对一个或多个频道感兴趣,只需接收感兴趣的消息,不需要知道什么样的发布者发布的。这种发布者和订阅者的解耦合可以带来更大的扩展性和更加动态的网络拓扑。
什么是 Redis 订阅发布?
Redis 的 订阅(SUBSCRIBE) 可以让客户端订阅任意数量的频道, 每当有新信息发送到被订阅的频道时, 信息就会被发送给所有订阅指定频道的客户端。
如图例子
订阅:
举个例子,假设 客户端 A、B、C 订阅了一个 channel 通道。那么他讲阻塞 等待接收信息。等到有一个新的消息 往 channel 里面发送数据。那么通道将会 通知给客户端 A、B、C
发布:
redis