Mensajería: Queue, Bus, Pub/Sub y Event Log
Elegir el mecanismo de mensajería según la entrega, el número de consumidores, el orden y la necesidad de replay.
Qué diferencia cada opción
Una queue distribuye trabajo: normalmente un consumidor procesa cada mensaje y se confirma con ack; es ideal para tareas y backpressure.
Un bus enruta comandos o eventos entre componentes; Pub/Sub entrega una publicación a múltiples suscripciones independientes.
Un event log conserva una secuencia durable que varios consumidores pueden leer a su ritmo y reproducir desde un offset.
Cómo decidir
Elige queue para trabajo exclusivo, Pub/Sub para notificar a varios consumidores y event log cuando replay, auditoría o re-procesamiento sean requisitos.
Define desde el inicio ordering, at-least-once/exactly-once, idempotencia, dead-letter queues, retención, particiones y evolución de esquemas.
Compensaciones
La mensajería introduce consistencia eventual, duplicados, mensajes fuera de orden y fallos parciales; el consumidor debe ser idempotente.
No todo evento necesita Kafka: la durabilidad, escala, replay y aislamiento requeridos deben justificar la complejidad operativa del broker.
Comentarios