2013-01-22 44 views
0

我正在嘗試寫celery的定期cron任務,該任務應該在每週12點到12點之間每小時執行一次。這是一個24小時的時間,但跨越兩個不同的日子。是否有可能安排此像 @periodic_task(run_every=crontab(<an expression equivalent to stated above>))
在我寫兩個任務的那一刻單任務:一個與裝飾:
crontab(minute='0',hour='12-23',day_of_week='tue'),另一個
crontab(minute='0',hour='0-11',day_of_week='wed')
一些例子給出here從星期二下午12點到星期三下午12點爲Celery寫入cron任務

感謝

回答

0

不幸的是,您創建的兩個規格不能合併成相同的規則。我能想到的唯一真正的解決方案(在大多數情況下不太理想)是使用CELERY_TIMEZONE更改Celery執行的時區。距離您目前使用Celery配置的時區+/- 12小時可以做到這一點,儘管很明顯這可能會導致其他後果。

+0

是的,這是一種解決方法,但我不認爲它應該做完。這可能會影響計劃的全部任務。堅持將任務分解爲兩天。謝謝 – aqs

+0

Yeap。完全同意。我認爲從Celery的功能角度來看,支持聯合多個規則可能是有意義的。 –

相關問題