Exactly-once semantics (EOS) διασφαλίζει ότι κάθε μήνυμα επεξεργάζεται ακριβώς μία φορά — χωρίς απώλεια, χωρίς διπλότυπα — ακόμη και με αποτυχίες και επαναπροσπάθειες. Το Kafka το επιτυγχάνει αυτό μέσω idempotent producers και transactions, αν και είναι σύνθετο και έχει overhead.
Η πρόκληση
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.
