django-celery
DjangoおよびCeleryを使用した非同期タスク処理。タスクキューイング、ワーカー管理、エラー処理、スケジューリング。Redis/RabbitMQ ブローカー統合。
它会碰到什么
扫了多少1 个文本文件,1 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Django + Celery 非同期タスク
Django でのバックグラウンドジョブと非同期処理。
使用時期
- メール送信をバックグラウンドで実行
- 重い処理をスケジュール
- 定期的なタスクを実行(日報、クリーンアップ)
- 外部API呼び出しをキューイング
- 複雑なワークフローを調整
セットアップ
1. Celery インストール
pip install celery redis
2. タスク定義
from celery import shared_task
@shared_task
def send_email(recipient):
# メール送信ロジック
pass
3. ワーカー起動
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)
詳細については、ドキュメントを参照してください。
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
同名技能的其他版本
有 2 个不同仓库或目录里都有叫 django-celery 的技能。它们内容并不相同,别混用:
- affaan-m/ECC — Django + Celery async task patterns — configuration, task design, beat scheduling, retries