Azure WebJob QueueTrigger执行

时间:2018-09-25 12:40:33

标签: azure azure-webapps queuetrigger

我正在Azure Webjob中同时运行QueueTrigger的多个实例。它是一个函数,但是可以并行调用多次。

我的函数使用静态变量来缓存多次使用的数据。

有时函数运行时,我在静态对象上发生冲突,这只能由试图同时访问它们的多个进程来解释,但是我被认为是每个队列触发实例都是独立运行的。 / p>

我的问题是

队列触发实例是否单独执行?

如果不是,是否有特定事件在加载“实例”时触发,以便可以加载静态对象?

1 个答案:

答案 0 :(得分:1)

通过一些实验弄清楚了。

QueueTrigger实例是WebJob在其中运行的过程的一部分,并且不是孤立执行的。

如果不通知WebJob保持打开状态,它们将自动关闭自己,并将丢失所有静态数据。这可能会导致混乱的行为,但这是设计使然。