Семантика ровно один раз (EOS) гарантирует, что каждое сообщение обрабатывается ровно один раз — без потерь, без дубликатов — даже при сбоях и повторах. Kafka достигает этого через идемпотентные производители и транзакции, хотя это сложно и имеет накладные расходы.
Суть проблемы
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.
