Tras el paquete de productor, la versión v1.2 del Kafka Simulator se centra en el lado de la lectura y su evento más malinterpretado: el rebalanceo. Este paquete añade 10 nuevos escenarios, llevando el temario a 33 de 125.

Qué incluye v1.2

Un grupo de consumidores es un problema de coordinación vestido con una API sencilla. v1.2 hace visible esa coordinación:

  • Estrategias de asignaciónrange, roundrobin, sticky y cooperative-sticky en paralelo, para que veas cuáles detienen el mundo y cuáles mueven solo las particiones imprescindibles.
  • Pertenencia estática (KIP-345) — por qué un miembro que se reinicia dentro de session.timeout.ms conserva su asignación y no provoca ningún rebalanceo, y qué ocurre cuando permanece caído demasiado tiempo.
  • Los dos timeoutssession.timeout.ms frente a max.poll.interval.ms: uno tiene que ver con los heartbeats, el otro con un consumidor que está vivo pero atascado procesando. Fallan de forma distinta, y el simulador muestra ambos.
  • Atasco y reanudación — un consumidor que deja de hacer poll, es expulsado y vuelve a unirse — y exactamente qué particiones se mueven cuando lo hace.

El rebalanceo es difícil de enseñar porque solo tiene sentido como secuencia: revocar, asignar, reanudar. Los diagramas estáticos reducen esa secuencia a una sola flecha. Aquí puedes recorrerla y ver cómo la propiedad cambia de manos una partición a la vez.

Por qué importa

La mayoría de los incidentes de consumidores en producción son en realidad incidentes de rebalanceo — un despliegue que parece una caída, un max.poll.interval.ms demasiado corto para un lote lento, un assignor sticky que mueve en silencio más de lo esperado. Ver el rebalanceo en movimiento, a la velocidad que elijas, es la forma más rápida de construir la intuición que hace que esos incidentes resulten obvios en retrospectiva.

Abre el simulador, añade y elimina consumidores, y observa cómo el grupo se reorganiza.