Azure Scheduled Web 作业有时会触发两次

Azure Scheduled Web job is triggering twice sometimes

我们有一个 Azure WebJob,计划在每天 8:00 AM UTC 运行(CRON - 0 00 08 * * *)。大部分时间它都正确触发,但在某些时候它触发两次的天数(第二个 运行 在第一个 运行 后约 10 秒发生)。我可以在 Web 作业历史记录中看到,当它触发两次时,第一个 运行 的触发器 属性(来自 WebJob History JSON)显示为 "External - ",第二个 运行 触发器 属性 显示为 "Schedule - 0 0 8 * * *" 但我们没有任何外部服务触发此 WebJob。

当我检查作业调度程序日志以获取更多详细信息时,"Web Job Invoked" 状态仅在 webjob 被触发两次的那些日子出现。

您的问题似乎是有两个不同的因素触发了您的 WebJob:

  1. 您可能有一个带有 cron 表达式的 settings.job (wiki)。
  2. 您可能还有一个 Azure 计划程序作业集合从外部访问您的 WebJob(可能具有不同的计划,这就是它们并不总是匹配的原因)。

建议去掉#2,只保留内部 WebJobs 调度通过 settings.job