Exactly-once semantics (EOS) ले प्रत्येक message लाई ठीक एक पटक process गर्ने कुरा सुनिश्चित गर्छ — कुनै loss छैन, कुनै duplicates छैन — failures र retries को सम्भावनामा पनि। Kafka ले यो idempotent producers र transactions मार्फत हासिल गर्छ, यद्यपि यो जटिल छ र overhead छ।
The challenge
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.
