Kafka en Producción · Lección 11
¿Qué diferencia de garantía ofrece configurar 'acks=all' en un producer de Kafka, frente a 'acks=1'?
'acks=all' espera confirmación de que todas las réplicas sincronizadas del topic recibieron el evento antes de considerarlo exitoso, mientras 'acks=1' solo espera confirmación del broker leader
Son exactamente equivalentes en términos de garantía de durabilidad del evento
'acks=1' ofrece mayor garantía de durabilidad que 'acks=all'
El parámetro acks no tiene ningún efecto real sobre la durabilidad del evento enviado
Kafka en Producción · Lección 11
Completa el código
acks=
Revisa: por ejemplo, acks=0 para no esperar ninguna confirmación (máxima velocidad, mínima garantía).
Kafka en Producción · Lección 11
¿Por qué usar 'acks=all' es más lento pero más seguro que 'acks=1' en un escenario donde perder un evento crítico (como una transacción financiera) sería inaceptable?
Pista: esperar la confirmación de todas las réplicas sincronizadas añade latencia adicional al envío del evento, pero garantiza que ese evento sobreviva incluso si el broker leader falla inmediatamente después de recibirlo, un tradeoff que vale la pena para datos donde la pérdida sería inaceptable.
✓
¡Lección completada!
Configuración de producers — acks, batching
0
XP ganado
3
Vidas restantes