celery_tasks.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #-*- coding: utf-8 -*-
  2. #__author__ = "dukun"
  3. from datetime import timedelta
  4. from celery import Celery
  5. from celery.schedules import crontab
  6. cel = Celery('tasks', broker='redis://127.0.0.1:6379/1', backend='redis://127.0.0.1:6379/2', include=[
  7. 'channel_success_rate',
  8. 'channel_use_time',
  9. 'manage_data'
  10. ])
  11. cel.conf.timezone = 'Asia/Shanghai'
  12. cel.conf.enable_utc = False
  13. cel.conf.beat_schedule = {
  14. # 名字随意命名
  15. 'add-channel_rate-1-seconds': {
  16. # 执行tasks1下的test_celery函数
  17. 'task': 'channel_success_rate.get_channel_rate',
  18. # 每隔2秒执行一次
  19. # 'schedule': 1.0,
  20. 'schedule': crontab(minute="*/1")
  21. #'schedule': timedelta(seconds=6),
  22. # 传递参数
  23. #'args': ('张三',)
  24. },
  25. 'add-channel_rate-2-seconds': {
  26. 'task': 'channel_success_rate.get_channel_total_rate',
  27. 'schedule': crontab(minute="*/1")
  28. #每年4月11号,8点42分执行
  29. #'schedule': crontab(minute=42, hour=8, day_of_month=11, month_of_year=4),
  30. #'args': ('张三',)
  31. },
  32. 'add-channel_time-3-seconds': {
  33. 'task': 'channel_use_time.get_channel_use_time',
  34. 'schedule': crontab(minute="*/1")
  35. },
  36. 'add-manage_data-4-seconds': {
  37. 'task': 'manage_data.save_yesterday_data',
  38. 'schedule': crontab(minute=10, hour=0)
  39. },
  40. 'add-manage_data-5-seconds': {
  41. 'task': 'manage_data.save_now_data',
  42. 'schedule': crontab(minute="*/1")
  43. }
  44. }