Azure Logic Apps - проблема тайм-аута
Я создал приложения Azure Logic для извлечения данных из REST API и заполнения базы данных SQL Azure для обработки некоторых данных и отправки результатов в Dynamics 365. У меня около 6000 строк из REST API, и я создал 2 приложения логики, одно из которых извлекает данные как постраничный (каждая страница имеет 10 записей) и использует цикл до тех пор, пока не обработает каждый набор. Я вызываю другое приложение логики 2 из цикла DO UNTIL и передаю постраничные записи, которые вставляют записи в базу данных SQL.
Проблема, с которой я сталкиваюсь, заключается в том, что приложение Main logic истекает через 2 минуты (оно обрабатывает около 600 строк и время ожидания).
Я наткнулся на эту статью, которая объясняет различные шаблоны, связанные с управлением длительным процессом. https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-create-api-app
Каков наилучший подход к выполнению долгосрочных задач без проблем с тайм-аутом?
1 ответ
Ваш REST API должен следовать асинхронному шаблону, возвращая 202 с заголовком retry-after & location, подробнее см. На https://docs.microsoft.com/azure/logic-apps/logic-apps-create-api-app
Или ваш REST API может быть в виде веб-крюка, поэтому приложения логики могут предоставить URL-адрес обратного вызова, который вы можете вызвать после завершения обработки.