如何定制芹菜周期性任务时间间隔?

时间:2017-01-06 12:09:32

标签: python celery crontab django-celery periodic-task

我需要每30分钟运行一次。我已经给了cron def addToInventory(inventory, addedItems): for v in addedItems: if v in inventory.keys(): inventory[v] += 1 else: inventory[v] = 1 return inventory inv = {'gold coin': 42, 'rope': 1} dragonLoot = ['gold coin', 'dagger', 'gold coin', 'gold coin', 'ruby'] inv = addToInventory(inv, dragonLoot) displayInventory(inv) 并且它每隔30分钟安排一次

as */30 * * *

但是我想定制cron来安排如

00:30
01:00
01:30
02:00
02:30
.
.
.
00:00

如何给cron选项卡制作这样的计划?

我正在使用django和celery并使用数据库调度程序。

PS:我希望这只能通过cron来实现,而不是通过在脚本中提供任何时间延迟来实现。有可能吗?

2 个答案:

答案 0 :(得分:0)

为您的crontab使用以下计划之一:

15,45 * * * * 要么 5,35 * * * * 要么 10,40 * * * *

答案 1 :(得分:0)

我相信你不能按照期望给出cron标签。 相反,你应该给出如下的个人cron标签..

Day 0 = Sunday
Day 1 = Monday
Day 2 = Tuesday
Day 3 = Wednesday
Day 4 = Thursday
Day 5 = Friday
Day 6 = Saturday

要在每个星期日,星期一,星期四运行任务,请给出cron标签,如

0 1 0,1,4 * *
5 1 0,1,4 * *
10 1 0,1,4 * *
15 1 0,1,4 * *
20 1 0,1,4 * *
25 1 0,1,4 * *
30 1 0,1,4 * *
35 1 0,1,4 * *
...
...

OR

要在每个星期二和星期五运行任务,请提供

之类的cron标签
0 1 2,5 * *
5 1 2,5 * *
10 1 2,5 * *
15 1 2,5 * *
20 1 2,5 * *
25 1 2,5 * *
30 1 2,5 * *
35 1 2,5 * *
...
...

您必须提供上述格式,以便能够按预期运行任务。