celery_app.py 864 B

12345678910111213141516171819202122232425262728293031323334
  1. """
  2. Celery 应用配置
  3. """
  4. from celery import Celery
  5. from celery.schedules import crontab
  6. from alien_gateway.config import settings
  7. # Redis 配置(可以从环境变量读取,这里使用默认配置)
  8. REDIS_URL = "redis://:Alien123456@172.31.154.180:30002/0"
  9. # 创建 Celery 应用
  10. celery_app = Celery(
  11. "alien_cloud",
  12. broker=REDIS_URL,
  13. backend=REDIS_URL,
  14. include=["alien_util.tasks.contract_tasks"]
  15. )
  16. # Celery 配置
  17. celery_app.conf.update(
  18. task_serializer="json",
  19. accept_content=["json"],
  20. result_serializer="json",
  21. timezone="Asia/Shanghai",
  22. enable_utc=True,
  23. # 定时任务配置
  24. beat_schedule={
  25. "check-contract-expiry": {
  26. "task": "alien_util.tasks.contract_tasks.check_contract_expiry",
  27. "schedule": crontab(hour=0, minute=1), # 每天凌晨0点1分执行
  28. },
  29. },
  30. )