Les sémantiques exactly-once (EOS) garantissent que chaque message est traité exactement une fois — aucune perte, aucun doublon — même en cas de défaillances et de tentatives. Kafka y parvient par des producteurs idempotents et des transactions, bien que ce soit complexe et couteux en surcharge.
Le défi
Exactly-once is HARD in distributed systems (failures, retries, duplicates are inevitable):
→ producer retries → duplicate messages; consumer reprocessing → duplicate effects
→ naive at-least-once → duplicates; at-most-once → loss
→ exactly-once requires careful mechanisms to avoid BOTH loss AND duplicates.
