Политика обработки сообщений для соединителя служебной шины в приложении Azure Logi c - PullRequest
1 голос
/ 27 марта 2020

У меня есть Azure Logicapp, который обрабатывает сообщения из служебной шины topi c, используя Когда одно или несколько сообщений поступают в разъем topi c (peek-lock) . enter image description here

Я отправил 40 сообщений в служебную шину с тем же идентификатором сеанса enter image description here

Как мы знаем из документации , этот соединитель может обрабатывать 20 сообщений за цикл. НО что мы видим здесь.

Первый запуск У меня есть другой часовой пояс (UTC + 3), поэтому часы имеют смену enter image description here

Второй запуск Second run

Третий прогон Third run

Вместо двух прогонов 20/20 имеем три 1/20/19

Почему это происходит? Я не могу найти объяснение в документах?

Ответы [ 2 ]

1 голос
/ 03 апреля 2020

Logi c приложение Service Bus не гарантирует пакетную обработку для достижения этого использования пакетный приемник

Похоже, что приложение logi c будет запущено с первым сообщением и попытка предварительно выбрать следующие 20 элементов (размер по умолчанию) и сделать это для следующих элементов.

Некоторые триггеры, например, когда одно или несколько сообщений поступают в очередь (автозаполнение) триггер, может вернуть одно или несколько сообщений. Когда эти триггеры срабатывают, они возвращаются между одним и числом сообщений, которое указано свойством Максимальное количество сообщений триггера.

https://docs.microsoft.com/en-us/azure/connectors/connectors-create-api-servicebus

0 голосов
/ 31 марта 2020

Приложение logi c не ожидает 20 сообщений для создания, поскольку оно не может знать, придет ли еще. Так что сразу запускается первое сообщение. На данный момент никакое другое сообщение недоступно для обработки.

На основании временных меток на ваших снимках экрана происходит следующее:

  1. Вы настроили приложение logi c , настроить триггер и т. д. c.
  2. Вы запустить отправка сообщений
  3. Приложение logi c получает первое отправленное сообщение
  4. Вы завершаете sh отправку 40 сообщений
  5. Приложение logi c завершает обработку первого сообщения
  6. Приложение logi c принимает следующие 20 сообщений
  7. Приложение logi c принимает последние 19 сообщений.
...