রিকোয়েস্ট হ্যান্ডলারের মধ্যে কখনও ১০ লক্ষ ইউজারের উপর লুপ চালাবেন না — একটি queue-এর মাধ্যমে fan out করুন, প্রতিটি provider যতটা গ্রহণ করতে পারে ততটুকুতে throttle করুন, প্রতিটি send-কে idempotent করুন, এবং ব্যর্থতাগুলোকে retry-এর জন্য একটি DLQ-তে রুট করুন। API কল শুধু enqueue করে; ধীর I/O worker-রা করে।
আর্কিটেকচার
Admin ─▶ Campaign API ─▶ [enqueue job] ─▶ Kafka/SQS ─┐
▼
┌──────────────── Worker pool (autoscaled) ───────────────┐
│ claim ─▶ dedup(Redis SETNX) ─▶ rate-limiter ─▶ provider │
└──────────┬──────────────────────────────┬───────────────┘
│ ok │ fail (5xx/timeout)
▼ ▼
sent_log (DB) Retry (backoff) ─▶ DLQ
