• 杰哥长得帅
    2020-11-16
    连续三次被分配队列相同,才开启新的消费,这边是否表述有误?如果重平衡就一两次,那岂不是所有消费者就都停下来了?能否请大佬再详述一下流程?

    作者回复: 重平衡只要发生,不管多少次,所有消费者都要停下来,否则状态会乱。就像一堆人在干活,突然领导说大家都停下来,要重新分配任务,这个时候所有人都要停下来,因为他重新分配任务的时候,如果有人还在干,那么任务量这个状态就会一直变。

    共 2 条评论
    3
  • tingye
    2020-07-04
    不太明白为什么消费端要连续三次被分配队列相同,才开启新的消费?假如一个新消费端上线,触发一次重平衡,被分配了一个队列,却不消费,要等三次重平衡分配相同队列才消费,这样做是基于什么考虑呢?

    作者回复: 为了防止抖动啊。 你想发布的时候,一台一台消费者滚动发布,如果不等一等,等到消费者数量稳定,就马上开始消费的话,可能一会儿消费者又加入,于是现有消费者又得停下重来(STOP THE WORLD)。

    共 2 条评论
    3
  • 小祺
    2020-07-09
    既然消费者跟broker之间有长连接,为什么要通过数据库来触发动态充平衡呢? 长连接建立和断开的时候触发可以吗?

    作者回复: 这个长连接的底层,还是依赖对DB表记录的轮训polling来实现的,也就是说实际状态还是存在DB中。

    共 2 条评论
    1