Azure Web作业是否会在多个实例上运行?

dri*_*iis 20 azure azure-webjobs

我计划将一个网站部署到Azure,它将利用Web Jobs.

如果站点扩展为在多个实例上运行,我是否应该期望在所有实例上启动作业(并发运行),或者我是否可以期望一次只运行一个作业实例?可以在Azure中配置吗?

Dav*_*bbo 29

我假设您使用的是Continuous WebJobs而不是Manual/Scheduled.在这种情况下,它将立即在所有实例上运行.为了正确发生这种情况,您需要在标准模式下运行,并启用"始终开启"设置.

如果您希望它在所有实例上运行,可以通过创建settings.job与WebJob文件一起调用的文件将其设置为"单例"模式.它应该包含:

{ "is_singleton": true }
Run Code Online (Sandbox Code Playgroud)

请注意,使用Kudu Process Explorer UI时,您将连接到单个实例,并且不会看到来自其他实例的进程.而是使用预览门户(https://portal.azure.com/)中内置的进程UI ,它显示所有实例中的进程.

  • 正确.每次计划触发时,计划作业将运行一次. (6认同)
  • 有“settings.job”的任何文档吗?查看还有哪些其他选项可用。 (2认同)