AppEngine cron(python)中的每一天,每周,每一年,每一年

时间:2010-12-23 18:23:19

标签: python google-app-engine cron

我正在尝试设置一个在每天,每周,每月和每年的午夜重复的appengine任务,以清除游戏的高分列表。

我的cron.yaml看起来像这样:

- description: daily clear
  url: /delete?off=10
  schedule: every day 00:00
- description: weekly clear
  url: /delete?off=20
  schedule: every monday 00:00
- description: monthly clear
  url: /delete?off=30
  schedule: every month 00:00
- description: yearly clear
  url: /delete?off=40
  schedule: every year 00:00

每日和每周的工作都没问题,但我无法弄清楚每个月和每年如何重复工作。这是the schedule format

对于每个月的工作,我都尝试过“每个月”,“每月1日”等表达方式,但没有任何效果。这种计划在cron工作中是否可行?

或者我是否只需每天00:00调用清算页面,并在页面中执行此逻辑并测试当前日期,如果它是周/月/年的开始?

2 个答案:

答案 0 :(得分:23)

您链接的文档提供了如何实现所需结果的示例。

# Daily:
every day 00:00

# Weekly:
every monday 00:00

# Monthly:
1 of month 00:00

# Yearly:
1 of jan 00:00

答案 1 :(得分:3)

我会选择这样的东西:

- description: daily clear
  url: /delete/daily
  schedule: every day 00:00
- description: weekly clear
  url: /delete/weekly
  schedule: every monday 00:00
- description: monthly clear
  url: /delete/monthly
  schedule: first of month 00:00
- description: yearly clear
  url: /delete/yearly
  schedule: first of jan 00:00

AFAIK您无法在/delete?off=30中使用此yaml之类的语法,但您需要为/delete/weekly的每个不同的明确定义路线,例如