Esattamente-una-volta (EOS) garantisce che ogni messaggio sia elaborato esattamente una volta — senza perdite, senza duplicati — anche in caso di errori e tentativi. Kafka lo realizza attraverso produttori idempotenti e transazioni, anche se è complesso e ha un costo in termini di overhead.
La sfida
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.
