azure function python - триггер и тайм-аут Blob

Я работаю с функцией Azure 2.0, средой выполнения Python 3.7 и инструментами функций Azure 2.0.

  • У меня есть простые функции на основе триггеров blob, которые читают файл, содержащий разные URL-адреса (www.xxx.com/any, ...), и очищают их с помощью библиотечных запросов и beautifulsoup4.
  • Тарифный план службы приложений не является «общим» и основан на конкретном плане службы приложений.
  • Общий тайм-аут установлен как 15 минут (в файле hosts.json).

Иногда действие scrapin URL-адреса занимает много времени, и я обнаружил это плохое поведение.

  1. Функция переходит в тайм-аут с BLOB-объектом XXXX.
  2. Функция continue вызывается снова для большого двоичного объекта XXXX, похоже, предыдущий запуск был неудачным, и среда выполнения повторно выполняет функцию.

Вопросы: - Как я могу указать, что мошенничество с BLOB-объектами запускает только одно выполнение функции? Хочу переписать внешнюю проверку. - Есть ли у вас предложение ограничить тайм-ауты для запросов в функции Python? Я безуспешно пробовал стандартный тайм-аут и eventlet.Timout.

Спасибо Ра


person RaGus    schedule 24.05.2020    source источник


Ответы (1)


BlobTrigger будет запускаться для всех BLOB-объектов, которые не получили получения. На github есть проблема по этой теме, но с отметками времени на blob, а не с тем, что вам нужно.

https://github.com/Azure/azure-webjobs-sdk/issues/1327

Что касается тайм-аутов в функции, это сделано намеренно. Вы можете проверить долговечные функции.

person ffffff01    schedule 24.05.2020