At-Least-Once Delivery
অ্যাট-লিস্ট-ওয়ান্স ডেলিভারি
Message হারাবে না, কিন্তু duplicate হতে পারে — receiver-কে তাই idempotent হতেই হয়।
Ack-ভিত্তিক redelivery-র অনিবার্য ফল:
producer → broker (persisted ✓) → consumer process করলো
↑ ack network-এ হারালো → broker আবার পাঠালো → duplicate!
- At-most-once (হারাতে পারে, ডুপ্লিকেট নয়) বনাম at-least-once — দুই চরমের মাঝে exactly-once; শেষোক্ত কখনো delivery-layer gift নয়, end-to-end dedupe/transaction machinery-র ফল
- Kafka-র idempotent producer + transactional consumer এক broker-এর ভেতরে ‘effectively once’ দেয়, cross-system যাওয়ামাত্র ধরা খায়
- Design rule: receiver-কে idempotent বানাও (key, offset tracking, conditional write) — sender-এর guarantee-র উপর জীবন বাঁচানো ভরসাহীন