最近在学习nsq的原理和使用,对于消费者和nsq消息交互这一块的模型不是很清楚,官方文档上说:如果一个channel上有多个消费者,那么消息只能有一个随机消费者接收到,那么这样的设计有什么意义,如果我想要多个消费者都接受到同一个topic下的消息,只能让它们在不同的channel下了吗?那我又何必把消费者放在一个channel下呢?
官网上还说了,这样的设计可以实现消费者的负载均衡又是什么意思呢?
最近在学习nsq的原理和使用,对于消费者和nsq消息交互这一块的模型不是很清楚,官方文档上说:如果一个channel上有多个消费者,那么消息只能有一个随机消费者接收到,那么这样的设计有什么意义,如果我想要多个消费者都接受到同一个topic下的消息,只能让它们在不同的channel下了吗?那我又何必把消费者放在一个channel下呢?
官网上还说了,这样的设计可以实现消费者的负载均衡又是什么意思呢?
7 回答5.4k 阅读
6 回答7k 阅读✓ 已解决
4 回答4.1k 阅读
2 回答5.9k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
4 回答2.4k 阅读
一个channel代表一个消费逻辑. 不明白你为什么不能接受一个topic,多个channel的模式.
至于负载均衡,指的就是如果多台服务器的消费者topic,channel都相同,会出现每个消息只会被随机的消费者消费一次,减轻单台服务器压力.