Последовательное выполнение пакетного задания Azure не работает - PullRequest
0 голосов
/ 28 ноября 2018

Мы используем веб-задание Azure для пакетной обработки, задание будет запускаться при наличии сообщения в очереди хранения.

Мы настроили задание на выполнение сообщений одно за другим.

JobHostConfiguration config = new JobHostConfiguration();
config.Queues.BatchSize = 1;
config.Queues.MaxDequeueCount = 1;

, даже если задание получает несколько сообщений из очереди хранения и выполняется параллельно.

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 29 ноября 2018

получение нескольких сообщений из очереди хранения и параллельное выполнение

Как вы оцениваете получение нескольких сообщений и параллельное выполнение?У вас было несколько экземпляров?

Я тестирую код в разных ситуациях.

1) Нормальная ситуация , не установлен batchsize, он будет перетаскивать все сообщенияв очереди. Как бы то ни было, я думаю, что он все еще запускается один за другим. Но из результата я думаю, что он не будет ждать последнего запуска полностью. Здесь - результат.

2) Установите batchsize в 1, если вы отлаживаете код или часто обновляете очередь, вы обнаружите, что он перетаскивал одно сообщение за один раз.И вот результат .

3) Установите batchsize на три и отладьте, просто измените номер перетаскиваемого сообщения, каждый раз, когда он будет перетаскивать 3 сообщения, он будет работать как обычно без установки batchsize. Здесь - это результат. И я обнаружил, что если вы просто запустили не отладку, показ консоли order очень сильно оргирован.

Так что, если у вас не запущен другой экземпляр, я думаю,это работает в последовательном режиме.Если это не соответствует вашим требованиям или у вас все еще есть вопросы, пожалуйста, дайте мне знать.

...