Pergunta 24 de 50
O que acontece quando existem mais Partitions que consumidores?
Pergunta
"O que acontece se um Consumer Group tiver menos instâncias de consumer do que Partitions o tópico possui?"
O que o entrevistador quer avaliar
O contraponto da pergunta anterior — testa se o candidato entende o cenário oposto e suas implicações de balanceamento de carga, não só o caso "ideal" de 1:1.
Resposta rápida
Alguns consumers recebem mais de uma partition. O processamento continua paralelo — cada partition ainda tem exatamente um consumer atribuído — mas fica desbalanceado, porque os consumers com múltiplas partitions processam mais carga que os demais.
Resposta nível Sênior
O Kafka distribui as partitions restantes entre os consumers disponíveis da forma mais equilibrada possível (dependendo da estratégia de assignor configurada), mas se o número de partitions não é múltiplo do número de consumers, a distribuição nunca é perfeitamente igual — um consumer pode ficar com 3 partitions e outro com 2, por exemplo. Isso não é um problema em si, mas significa que o consumer com mais partitions atribuídas tende a acumular mais consumer lag (Capítulo 15) se o volume por partition for parecido entre elas, porque ele precisa processar o dobro ou triplo de mensagens no mesmo intervalo de tempo.
Explicação aprofundada
Veja "O que acontece com números diferentes de consumers" no Capítulo 6.
Exemplo financeiro
Um tópico com 5 partitions e um Consumer Group com 2 réplicas resulta em uma réplica processando 3 partitions e a outra processando 2 — ainda paralelo, mas com uma réplica absorvendo 50% mais carga que a outra.
"Isso é um problema que preciso corrigir imediatamente"
Nem sempre. É uma distribuição válida e funcional — o alerta real é quando esse desbalanceamento se traduz em consumer lag desproporcional e sustentado em uma das instâncias, sinal de que o paralelismo total do grupo está insuficiente para o volume, não apenas mal distribuído.
Pode vir a seguir
Prováveis follow-ups: "o que é Rebalance?" e "o que acontece quando um Consumer cai?".
Capítulos relacionados