
Django Celery
- 1.4k installs
- 238k repo stars
- Updated August 5, 2026
- affaan-m/ecc
This is a copy of django-celery by affaan-m - installs and ranking accrue to the original listing.
Django Celery is a backend agent skill that adds reliable background jobs, scheduled tasks, and async processing to Django applications for developers who need queued email, heavy compute, periodic cleanup, and external
About
Django Celery is an ECC agent skill for adding asynchronous task processing to Django projects using Celery with Redis or RabbitMQ brokers. It walks through installing Celery and Redis via pip, defining `@shared_task` functions, starting workers with `celery -A myapp worker -l info`, and enqueueing work with `.delay()` for immediate async execution or crontab-based schedules for periodic jobs like daily reports and cleanup tasks. Developers reach for Django Celery when email sending, heavy processing, recurring maintenance, external API calls, or multi-step workflows should not block HTTP request threads. The skill covers task queuing, worker management, error handling, and broker integration patterns standard in production Django deployments.
- Production patterns for Celery with Redis or RabbitMQ in Django
- Includes celery.py entrypoint, settings configuration, and autodiscover_tasks setup
- Covers task design, retries, Canvas workflows, Celery Beat scheduling, and monitoring
- Guides for offloading email, PDF generation, and external API calls from the request cycle
- Includes debugging task failures, queue backlogs, and writing tests for Celery tasks
Django Celery by the numbers
- 1,381 all-time installs (skills.sh)
- +84 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/affaan-m/ecc --skill django-celeryAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1.4k |
|---|---|
| repo stars | ★ 238k |
| Last updated | August 5, 2026 |
| Repository | affaan-m/ecc ↗ |
How do you add background jobs to Django?
Add reliable background jobs, scheduled tasks, and async processing to a Django application.
Who is it for?
Django developers offloading email, heavy compute, periodic tasks, or external API calls to Celery workers with Redis or RabbitMQ.
Skip if: Non-Django Python projects, serverless-only architectures without persistent workers, or trivial apps with no async workload.
When should I use this skill?
A Django app needs background email delivery, scheduled cleanup, queued API calls, or heavy processing outside HTTP requests.
What you get
Celery task modules, broker configuration, worker startup commands, and scheduled crontab job definitions.
- Celery task modules
- Broker configuration
- Worker startup scripts
Files
Django + Celery 非同期タスク
Django でのバックグラウンドジョブと非同期処理。
使用時期
- メール送信をバックグラウンドで実行
- 重い処理をスケジュール
- 定期的なタスクを実行(日報、クリーンアップ)
- 外部API呼び出しをキューイング
- 複雑なワークフローを調整
セットアップ
1. Celery インストール
pip install celery redis2. タスク定義
from celery import shared_task
@shared_task
def send_email(recipient):
# メール送信ロジック
pass3. ワーカー起動
celery -A myapp worker -l infoタスク
非同期実行
send_email.delay(recipient) # すぐにキューに追加、非同期実行スケジューリング
from celery.schedules import crontab
app.conf.beat_schedule = {
'send-report-daily': {
'task': 'app.tasks.send_report',
'schedule': crontab(hour=9, minute=0),
},
}エラーハンドリング
- [ ] リトライロジック実装
- [ ] デッドレター処理
- [ ] ロギング構成
- [ ] モニタリング設定(Flower)
詳細については、ドキュメントを参照してください。
Related skills
How it compares
Use Django Celery when you need persistent worker processes and crontab scheduling inside a Django monolith rather than a separate job runner framework.
FAQ
How does Django Celery enqueue a background task?
Django Celery enqueues work by calling `.delay()` on a `@shared_task`-decorated function, which adds the task to the Redis or RabbitMQ broker for async worker execution.
What broker does Django Celery support?
Django Celery integrates Redis or RabbitMQ as the message broker, installed alongside Celery via pip and configured in the Django project settings.