定时器触发的 Azure Function 执行不规律
Timer triggered Azure Function executes irregularly
我有一个计时器触发的 Azure 函数,它每天早上 04:30 AM
执行
public static void Run([TimerTrigger("0 30 4 * * *")] TimerInfo myTimer)
现在我注意到调用日志显示了完全不同的执行时间:
这个功能非常有用。自一周以来,我注意到以下问题:
怎么会在规定时间前2分钟执行呢?为什么在定义的时间后最多 8 分钟 (!!) 执行?
另一个奇怪的行为是,在不同的环境中,我看到在同一分钟内多次触发完全相同的 Azure 函数:
这可能是调用日志中显示的问题,还是有人对这种奇怪的效果了解更多?
非常感谢任何提示!
How can this be that there are executions 2 minutes before the defined time?
两分钟左右的误差属于正常现象,可能与设计有关
And why there are executions up to 8 minutes (!!) after the defined time?
处理时间取决于您编写的代码和处理的数据大小。
Another strange behaviour is that in a different environment I see that the exact same Azure Function is triggered multiple times within the same minute
请检查 runOnStartup
是否设置为 True
。我认为这是由多个实例同时 运行 引起的。可以参考这个official documentation.
我有一个计时器触发的 Azure 函数,它每天早上 04:30 AM
执行public static void Run([TimerTrigger("0 30 4 * * *")] TimerInfo myTimer)
现在我注意到调用日志显示了完全不同的执行时间:
这个功能非常有用。自一周以来,我注意到以下问题:
怎么会在规定时间前2分钟执行呢?为什么在定义的时间后最多 8 分钟 (!!) 执行?
另一个奇怪的行为是,在不同的环境中,我看到在同一分钟内多次触发完全相同的 Azure 函数:
这可能是调用日志中显示的问题,还是有人对这种奇怪的效果了解更多?
非常感谢任何提示!
How can this be that there are executions 2 minutes before the defined time?
两分钟左右的误差属于正常现象,可能与设计有关
And why there are executions up to 8 minutes (!!) after the defined time?
处理时间取决于您编写的代码和处理的数据大小。
Another strange behaviour is that in a different environment I see that the exact same Azure Function is triggered multiple times within the same minute
请检查 runOnStartup
是否设置为 True
。我认为这是由多个实例同时 运行 引起的。可以参考这个official documentation.