Будет ли работать в Azure Web в нескольких экземплярах?

Я планирую развернуть сайт на Azure, который будет использовать Веб-задания.

Если сайт масштабируется для запуска в нескольких экземплярах, должен ли я ожидать, что задание будет запущено также во всех экземплярах (выполняется одновременно), или я могу ожидать, что там будет только один экземпляр задания, выполняемого на время? Может ли это быть настроено в Azure?

Ответы

Ответ 1

Я предполагаю, что вы используете Continuous WebJobs, а не Manual/Scheduled. В этом случае он будет запускаться во всех экземплярах одновременно. Чтобы это произошло правильно, вам нужно работать в стандартном режиме и включить параметр "Всегда включено".

Если вы не хотите, чтобы он запускался во всех экземплярах, вы можете установить его в режиме "singleton", создав файл с именем settings.job рядом с вашими файлами WebJob. Он должен содержать:

{ "is_singleton": true }

Обратите внимание, что при использовании пользовательского интерфейса Process Explorer Kudu вы подключаетесь к одному экземпляру и не увидите процессы из других экземпляров. Вместо этого используйте пользовательский интерфейс процессов, созданный в портале предварительного просмотра (https://portal.azure.com/), который показывает процессы во всех экземплярах.