कहिल्यै पनि request handler भित्र 10 लाख प्रयोगकर्तामाथि loop नचलाउनुहोस् — queue मार्फत fan out गर्नुहोस्, प्रत्येक provider ले स्वीकार गर्न सक्ने हदसम्म throttle गर्नुहोस्, प्रत्येक send लाई idempotent बनाउनुहोस्, र retry का लागि failure हरूलाई DLQ मा route गर्नुहोस्। API call ले केवल enqueue मात्र गर्छ; slow 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
