У меня довольно простая очередь, которая, случается, имеет кучу сообщений на ней (по дизайну). Кучи == .. говорят ... тысячи.Как обрабатывать множество сообщений в Azure Queue с помощью WebJob?
Сейчас я играю с использованием Azure Web Jobs с триггером очереди для обработки сообщений. Работает отлично.
Я беспокоюсь о качестве работы. Давайте предположим, что мой метод, обрабатывающий сообщение, занимает 1 сек. С таким количеством сообщений это все складывается.
Я знаю, что могу вручную публиковать несколько сообщений одновременно, а затем параллельно обрабатывать их. Но я не уверен, как мы это делаем с веб-заданиями?
Я Принимаю решение в масштабе ?? что означает, что я бы создал 25 экземпляров webjob? Или есть лучший способ, с помощью которого я могу запускать сообщение, но поп-25 или около того сразу, а затем параллельно их.
ПРИМЕЧАНИЕ. Большая часть задержек - это ввод-вывод (т. Е. Вызов REST третьему лицу). не CPU.
Я думаю -> создайте 25 заданий и await Task.WhenAll(tasks);
для обработки всех данных, которые я возвращаю.
Итак - какие у меня варианты, пожалуйста?
ПРИМЕЧАНИЕ № 2: Если решение масштабируется, тогда мне также необходимо убедиться, что в моем проекте веб-работы есть только один функция в нем, правильно? в противном случае все функции (чтение: триггеры и т. д.) также будут все быть расшифровано.
Если вы изучаете, я думаю, что это хороший кандидат на лазурные функции, вы, вероятно, можете разделить ваш код и заставить триггеры произойти логически. В противном случае, azure-webjobs должны работать нормально. – lopezbertoni
Я просто нахожу ИНСТРУМЕНТ для функций .. очень ограничиваю. В основном я не хочу делать _any_ кодирование в веб-интерфейсе (извините Монако), потому что я хочу, чтобы код связывался с CI/CD. Это мое текущее разочарование:/ –
Я чувствую, что технология выглядит многообещающе, но развивающийся опыт по-прежнему несколько боль. Если это помогает, мы обработали более 900 000 сообщений для процесса миграции с помощью webjobs. Это получилось довольно неплохо (10 экземпляров) – lopezbertoni