1
我已经实现了一个长时间运行的进程作为一个WebJob,它是由一个队列消息触发的。我的理解是JobHost.RunAndBlock()
只会在当前作业完成并返回后才开始执行。但是,如果我的第一个进程在另一个队列消息到达时仍在运行,则第二个进程将开始执行并破坏第一个进程(其中包含一些静态数据结构)。JobHost.RunAndBlock没有阻止
我已经实现了一个长时间运行的进程作为一个WebJob,它是由一个队列消息触发的。我的理解是JobHost.RunAndBlock()
只会在当前作业完成并返回后才开始执行。但是,如果我的第一个进程在另一个队列消息到达时仍在运行,则第二个进程将开始执行并破坏第一个进程(其中包含一些静态数据结构)。JobHost.RunAndBlock没有阻止
默认情况下,并行处理队列消息。并行度的默认度是16.
如果您不想并行执行,您可以将JobHostConfiguration.Queues.BatchSize
设置为1
,如here所述。