FOCUSCurrently working on ScheduleSomething and LayerdEvents algorithmsLearn More
FOCUSCurrently working on ScheduleSomething and LayerdEvents algorithmsLearn More
FOCUSCurrently working on ScheduleSomething and LayerdEvents algorithmsLearn More
FOCUSCurrently working on ScheduleSomething and LayerdEvents algorithmsLearn More
ScalingArchitecture Decisions
ADR 002: Celery & Redis Scheduler
DocsscalingArchitecture DecisionsADR 002: Celery & Redis Scheduler
GitHub Live Sync

ADR 002: Celery & Redis Scheduler

Live technical documentation fetched from GitHub repository omghante/metapilot/docs/adr/ADR-002-celery-redis-scheduler.md

ADR-002: Celery & Redis Broadcast Scheduler Engine

  • Status: Accepted
  • Date: 2026-07-05
  • Deciders: Backend Engineering Team

Context

Mass broadcast marketing campaigns send thousands of WhatsApp messages per campaign. Executing API calls synchronously during HTTP requests blocks web workers and risks timing out.

Decision

We adopt Celery 5.3 backed by Redis as our distributed task processing engine. Periodic cron scheduling is handled via
django_celery_beat
.

Consequences

  • Positive: High throughput, scalable worker nodes, automatic retries with exponential backoff.
  • Negative: Requires running Redis and Celery worker processes alongside the web server.