java - 如何在 google-app-engine (java) 中设置复杂的自定义 crontab?

标签 java google-app-engine cron

我正在构建一个应用程序,我需要为其设置 cron 作业。我想要做的是设置一小时内应运行特定 cron 的特定分钟。例如:

  • 每小时第 1 分钟的任务 1
  • 每小时每隔一分钟执行任务 2
  • 仅在后半小时每 2 分钟执行一次任务 3

以标准 Unix cron 格式构建它相当简单,但无法弄清楚如何在 Google-App-Engine 中执行此操作。

documentation没有列出任何重要的例子。关于如何做有什么建议吗?例子会很好。

最佳答案

您链接到的文档似乎表明仅使用 Cron for Java 不可能完成您想要的操作(除非它们有未记录的功能)。特别是这似乎不允许多次。

time specifies the time of day, as HH:MM in 24 hour time.

Python 版本说的是完全相同的事情。

但是,一种解决方案(尽管在 CPU 使用率方面有点昂贵)是每分钟调用一个 URL,然后从该 URL 的处理程序中分派(dispatch)到您需要的任何其他调用。

换句话说,类似于:

<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
  <cron>
    <url>/run-scheduled-tasks</url>
    <description>Run all scheduled tasks</description>
    <schedule>every 1 minutes</schedule>
  </cron>
</cronentries>

然后在运行计划任务中,检查数据库以了解每个任务上次运行的时间,以及自那时起是否发生了触发它们的复杂条件。

关于java - 如何在 google-app-engine (java) 中设置复杂的自定义 crontab?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1387403/

相关文章:

javascript - Cron Job 在 Cloudwatch Events 中从上午 8 点到下午 4.30 每分钟运行一次

python - web2py 计划任务重新创建(重置)数据库

java - 为什么说我没弄错?

java - 检查 MySQL 结果是否返回行

java - 无法删除 XML 中的特定节点

java - JPA 和安卓

wordpress - 使用 cURL 在 cron 作业中下载文件

java - 将二维数组转换为字符串

javascript - 在浏览器中运行 C

python - Google App Engine 在 Python/Flask API 上产生 502 错误