抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

试着回答一下这个有趣的消费-生产问题吧:

  1. 这是一个使用消息队列解耦多个生产者和多个消费者的系统。
  2. 生产者生产的消息是有分区的(按project_id分区),分区也会动态分配。
  3. 消费者需要竞争消费消息,每个消费者可以消费多个分区。
  4. 对于一个分区,最多有不超过1/n个消费者在消费。
  5. 生产者和消费者根据性能和数据量,会在kubernetes中进行动态的扩缩容。

消息需要尽可能的被均匀地分配到消费者上,以实现负载均衡。

消息需要尽可能的N等分,这N份消息将分配给消费者服务A(A的数量N>=2A)

e.g: 1/10 情景: 消息需要尽可能的10等分,这10份消息将分配给消费者服务A(A的数量>=5),对于不满足5的倍数情况,如23个消费者,则余下3个随机分配

在这种动态输入输出的情况下,我们该如何设计一个消息队列负载均衡系统呢,如何保证3个9的SLA呢?




本站总访问量:0