Background Jobs — Notes
Functional
- Enqueue jobs from app.
- Workers consume + execute.
- Retries, delayed jobs, scheduled jobs.
- DLQ + replay UI.
Non-functional
- Tens of millions of jobs/day common.
- Per-job latency depends entirely on workload.
Trade-offs
- Redis-backed (Sidekiq) = fast, ephemeral; DB-backed = durable.
- Per-app queues vs shared: isolate noisy neighbors.
- Autoscaling based on queue depth + processing time.
Refs
- Sidekiq / Celery / RQ / Resque docs.
- "Latency sensitive background jobs" Shopify blog.
- AWS SQS + Lambda patterns.