Подтвердить что ты не робот

Тайм-аут функций Azure для плана потребления

Есть ли способ изменить текущий 5-минутный тайм-аут для функций Azure, работающих в соответствии с планом потребления?

Для некоторых вычислений аналитики данных 5 минут недостаточно времени.

Альтернатива использования webjobs не позволяет параллельное выполнение функции.

4b9b3361

Ответ 1

(Другой ответ немного сбивает с толку, поэтому пишите, а не редактируйте)

Функции Azure теперь могут работать до 10 минут с использованием плана потребления:

Примечание Время ожидания по умолчанию для функций в плане потребления составляет 5 минут. Значение можно увеличить до 10 минут для приложения-функции, изменив свойство functionTimeout в host.json.

Источник: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consump-plan.

Файл: host.json

// Value indicating the timeout duration for all functions.
// In Dynamic SKUs, the valid range is from 1 second to 10 minutes and the default value is 5 minutes.
// In Paid SKUs there is no limit and the default value is null (indicating no timeout).

// Set functionTimeout to 10 minutes
{
    "functionTimeout": "00:10:00"
}

Источник:
https://buildazure.com/2017/08/17/azure-functions-extend-execution-timeout-past-5-minutes/
https://github.com/Azure/azure-webjobs-sdk-script/wiki/host.json

Ответ 2

В настоящее время нет способа запустить функцию более 5 минут в плане потребления. Вы можете проверить ответ команды здесь:

Причина, по которой мы тайм-аут составляет 5 минут с динамическим планом, заключается в том, что в рамках динамического плана виртуальная машина, на которой размещена ваша функция, будет закрыта вниз (примерно) через 5 минут после последнего срабатывания триггера. Обеспечение тайм-аут, как мы делаем сегодня, - это способ обеспечить последовательный опыт регистрации, который объясняет, почему функция была остановлена Бег. До этого вы увидите, что функции просто исчезают mid-invocation без каких-либо указаний на то, почему. Мы оцениваем улучшений в этой области и будет обновляться, когда у нас будет больше конкретных подробности.

Долгосрочные функции, которые нельзя разложить на меньшие в настоящее время куски будут запущены в задачи, выполняемые в динамическом плане. Тем не менее, часто существуют решения для разбивки одного долговременные функции в более мелкие и быстрые функции. Например, если у вас есть функция, которая запускает длительную операцию в другом месте, тогда опросы для завершения, не могли бы вы получить "operationId" от этого затем поместите его в запланированное сообщение Service Bus (или даже в сообщение о очереди с таймаутом невидимости), а также второе Функция "CheckStatus", которая считывает эти сообщения и опросы для Завершение

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

а также https://github.com/Azure/Azure-Functions/issues/75

UPDATE

Функции Azure теперь могут работать до 10 минут с использованием плана потребления: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale