Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функции Azure в настоящее время поддерживают две версии узла среды выполнения. В следующей таблице приведены сведения о поддерживаемых версиях среды выполнения, их уровне поддержки и о том, когда они должны использоваться:
Версия | Уровень поддержки | Описание |
---|---|---|
4.x | Генеральная Ассамблея | Рекомендуемая версия среды выполнения для функций на всех языках. Ознакомьтесь с поддерживаемыми версиями языка. |
1.x | GA (поддержка заканчивается 14 сентября 2026 г.) | Поддерживается только для приложений C#, которые должны использовать .NET Framework. Эта версия находится в режиме обслуживания с улучшениями, предоставляемыми только в более поздних версиях. Поддержка будет завершена для версии 1.x 14 сентября 2026 г. Мы настоятельно рекомендуем перенести приложения в версию 4.x, которая поддерживает .NET Framework 4.8, .NET 8 и .NET 9. |
Это важно
По состоянию на 13 декабря 2022 г. приложения-функции, работающие в версиях 2.x и 3.x среды выполнения Функций Azure, достигли конца расширенной поддержки. Дополнительные сведения см. в разделе "Устаревшие версии".
В этой статье описаны некоторые различия между поддерживаемыми версиями, способами создания каждой версии и изменением версии, в которой выполняются функции.
Уровни поддержки
Различают два уровня поддержки:
- Общедоступные (GA) — полностью поддерживаемые и утвержденные для использования в рабочей среде.
- Предварительная версия — пока не поддерживается, но в будущем ожидается повышение до состояния GA.
Языки
Все функции в рамках одного приложения должны использовать один язык. При создании функционального приложения вы выбираете язык функций. Язык приложения-функции поддерживается в параметре FUNCTIONS_WORKER_RUNTIME и не может быть изменен при наличии существующих функций.
Выберите предпочитаемый язык разработки в верхней части статьи.
В следующей таблице показаны версии .NET, поддерживаемые Функции Azure.
Поддерживаемая версия .NET зависит от версии среды выполнения Функций и выбранной модели выполнения:
Код функции выполняется в отдельном рабочем процессе .NET. Используйте поддерживаемые версии .NET и Microsoft .NET Framework. Дополнительные сведения см. в руководстве по запуску функций Azure C# в изолированной рабочей модели.
Поддерживаемая версия | Уровень поддержки | Ожидаемая дата окончания поддержки |
---|---|---|
.NET 9 | Генеральная Ассамблея | 12 мая 2026 г. |
.NET 8 | Генеральная Ассамблея | 10 ноября 2026 г. |
.NET Framework 4.8.1 | Генеральная Ассамблея | См. политику |
.NET 6 ранее поддерживался в изолированной рабочей модели, но достигла конца официальной поддержки 12 ноября 2024 года.
.NET 7 ранее поддерживался в изолированной рабочей модели, но достигла конца официальной поддержки 14 мая 2024 года.
Дополнительные сведения см. в руководстве по запуску функций Azure C# в изолированной рабочей модели.
В следующей таблице показаны языковые версии, поддерживаемые для функций Java.
Поддерживаемая версия | Уровень поддержки | Поддерживается до |
---|---|---|
Java 21 | Генеральная Ассамблея | См. схему выпуска и обслуживания. |
Java 17 | Генеральная Ассамблея | См. схему выпуска и обслуживания. |
Java 11 | Генеральная Ассамблея | См. схему выпуска и обслуживания. |
Java 8 | Генеральная Ассамблея | См. страницу поддержки Temurin. |
Дополнительные сведения о разработке и запуске Java-функций см. в руководстве разработчика для функций Azure Java.
В следующей таблице показаны языковые версии, поддерживаемые для функций Node.js.
Поддерживаемая версия | Уровень поддержки | Ожидаемая дата окончания поддержки |
---|---|---|
Node.js 22 | GA (Linux) Предварительная версия (Windows) |
30 апреля 2027 г. |
Node.js 20 | Генеральная Ассамблея | 30 апреля 2026 г. |
TypeScript поддерживается путем транспилирования в JavaScript. Для получения дополнительной информации см. в руководстве разработчика Azure Functions Node.js.
В следующей таблице показана языковая версия, поддерживаемая для функций PowerShell.
Поддерживаемая версия | Уровень поддержки | Ожидаемая дата окончания поддержки |
---|---|---|
PowerShell 7.4 | Генеральная Ассамблея | 10 ноября 2026 г. |
Для получения дополнительной информации см. руководство разработчика по функциям PowerShell в Azure.
В следующей таблице показаны языковые версии, поддерживаемые для функций Python.
Поддерживаемая версия | Уровень поддержки | Ожидаемая дата окончания поддержки |
---|---|---|
Python 3.13 | Предпросмотр | Октябрь 2028 г. |
Python 3.12 | Генеральная Ассамблея | Октябрь 2028 г. |
Python 3.11 | Генеральная Ассамблея | Октябрь 2027 г. |
Python 3.10 | Генеральная Ассамблея | Октябрь 2026 г. |
Python 3.9 | Генеральная Ассамблея | Октябрь 2025 г. |
Это важно
Python 3.13 в настоящее время поддерживается в планах Flex Consumption, Premium и Dedicated. Поддержка Python 3.13 в тарифе по потреблению ожидается.
Для получения дополнительной информации см. руководство разработчика по работе с функциями Azure на Python .
Сведения о запланированных изменениях в службе поддержки языков см. в обновлении стратегии Azure.
Сведения о языковых версиях ранее поддерживаемых версий среды выполнения Функций см. в версиях среды выполнения "Устаревшие".
Запуск в определенной версии
Версия среды выполнения Функций, используемая опубликованными приложениями в Azure, определяется параметром FUNCTIONS_EXTENSION_VERSION
приложения. В некоторых случаях и для определенных языков могут применяться другие параметры.
По умолчанию приложения-функции, созданные на портале Azure, с помощью Azure CLI или из средств Visual Studio, устанавливаются в версию 4.x. При необходимости эту версию можно изменить. Только после создания приложения-функции, но перед добавлением любых функций, можно изменить версию среды выполнения до 1.x. Обновление до более поздней основной версии разрешено даже с приложениями, имеющими существующие функции.
Перенос существующих приложений-функций
Если приложение имеет существующие функции, перед переходом на более позднюю основную версию среды выполнения необходимо принять меры предосторожности. В следующих статьях подробно рассматриваются существенные изменения между основными версиями, включая изменения в языках. Они также предоставляют пошаговые инструкции по успешной миграции существующего приложения-функции.
- Переход с среды выполнения версии 3.x на версию 4.x
- Переход с среды выполнения версии 1.x на версию 4.x
Изменение версии приложений в Azure
Используются следующие основные значения версий среды выполнения:
Ценность | Цель выполнения |
---|---|
~4 |
4.x |
~1 |
1.x |
Это важно
Не изменяйте этот параметр приложения произвольно, так как могут потребоваться другие изменения и изменения в коде функции. Для существующих функциональных приложений следуйте инструкциям по миграции.
Закрепление на определенной минорной версии
Чтобы устранить проблемы, которые может возникнуть при запуске приложения-функции в последней основной версии, необходимо временно закрепить приложение на определенной дополнительной версии. Закрепление дает время, чтобы приложение работало правильно в последней основной версии. Способ закрепления на минорную версию отличается между Windows и Linux. Дополнительные сведения см. в статье «Как нацеливать версии среды выполнения Azure Functions».
Старые минорные версии периодически удаляются из функции. Следите за Анонсами службы приложений Azure для получения последних новостей о выпусках "Функций Azure", включая удаление отдельных устаревших промежуточных версий.
Минимальные версии расширений
Технически не существует корреляции между версиями расширений привязки и версией среды выполнения Функций. Однако начиная с версии 4.x среда выполнения функций применяет минимальную версию для всех расширений триггеров и привязок.
Если вы получаете предупреждение о том, что пакет не удовлетворяет минимальной требуемой версии, следует обновить пакет NuGet до минимальной версии, как обычно. Минимальные требования к версии для расширений, используемых в Функциях версии 4.x, можно найти в связанном файле конфигурации.
Для скрипта C# обновите ссылку на пакет расширений в host.json следующим образом:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Технически не существует корреляции между версиями пакета расширений и версией среды выполнения Функций. Однако начиная с версии 4.x среда выполнения функций применяет минимальную версию для пакетов расширений.
Если вы получаете предупреждение о версии пакета расширений, не соответствующей минимальной требуемой версии, обновите ссылку на существующий пакет расширений в host.json следующим образом:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Дополнительные сведения о пакетах расширений см. в разделе "Пакеты расширений".
Устаревшие версии
Это важно
Поддержка среды выполнения Azure Functions версии 1.x окончится 14 сентября 2026 г. Настоятельно рекомендуется перенести приложения в версию 4.x для полной поддержки.
Эти версии среды выполнения Функций достигли конца расширенной поддержки 13 декабря 2022 г.
Версия | Текущий уровень поддержки | Предыдущий уровень поддержки |
---|---|---|
3.x | Не поддерживается | Генеральная Ассамблея |
2.x | Не поддерживается | Генеральная Ассамблея |
Как можно скорее необходимо перенести приложения в версию 4.x, чтобы получить полную поддержку. Полный набор инструкций по миграции, относящихся к языку, см. в статье "Миграция приложений в Функции Azure версии 4.x".
Приложения с использованием версий 2.x и 3.x по-прежнему можно создавать и развертывать из конвейера CI/CD DevOps, а все существующие приложения продолжают работать без критических изменений. Однако приложения не могут быть доступны для новых функций, исправлений безопасности и оптимизации производительности. Только после обновления приложений до версии 4.x вы сможете получить поддержку соответствующих служб.
Версии 2.x и 3.x больше не поддерживаются из-за окончания поддержки .NET Core 3.1, которая была основной зависимостью. Это требование влияет на все языки, поддерживаемые функциями Azure.
Локально разработанные версии приложений
Для локального изменения целевых версий можно внести следующие обновления в приложения-функции.
Версии среды выполнения Visual Studio
В Visual Studio вы выбираете версию среды выполнения при создании проекта. Средства Функций Azure для Visual Studio поддерживают две основные версии среды выполнения. Правильная версия используется при отладке и публикации на основе параметров проекта. Параметры версии определяются в CSPROJ-файле в следующих свойствах:
<TargetFramework>net8.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
Если вы используете изолированную рабочую модель, вы можете выбрать as целевую платформу: net8.0
, net6.0
или net48
. Вы также можете выбрать использование предварительной поддержки для net9.0
. Если вы используете модель в процессе, можно выбрать net8.0
или net6.0
, и вы должны включить расширение Microsoft.NET.Sdk.Functions
, заданное как минимум 4.4.0
.
.NET 7 ранее поддерживался в изолированной рабочей модели, но достигла конца официальной поддержки 14 мая 2024 года.
Visual Studio Code и Основные инструменты Azure Functions
Основные средства Функций Azure используются для разработки командной строки, а также расширения Функций Azure для Visual Studio Code. Дополнительные сведения см. в разделе "Установка основных средств Функций Azure".
Для разработки Visual Studio Code может также потребоваться обновить параметры пользователя для azureFunctions.projectRuntime
в соответствии с версией установленных средств. Этот параметр также обновляет шаблоны и языки, используемые во время создания приложения-функции.
Привязки
Начиная с версии 2.x среда выполнения использует новую модель расширения привязки , которая предлагает следующие преимущества:
Поддержка расширений привязки, не связанных с Microsoft.
Развязка среды выполнения и привязок. Это изменение позволяет версионировать расширения привязки и выпускать их независимо. Например, вы можете перейти на версию расширения, которая зависит от более новой версии базового пакета SDK.
Более светлая среда выполнения, в которой известны только используемые привязки и загружаются средой выполнения.
За исключением триггеров HTTP и таймера, все привязки должны быть явно добавлены в проект приложения-функции или зарегистрированы на портале. Дополнительные сведения см. в шаблонах выражений привязки функций Azure.
В этой таблице показаны привязки, поддерживаемые в основных версиях среды выполнения Функций Azure:
Тип | 1.x1 | 2.x и выше2 | Триггер | Ввод | Выходные данные |
---|---|---|---|---|---|
Blob-хранилище | ✔ | ✔ | ✔ | ✔ | ✔ |
Azure Cosmos DB | ✔ | ✔ | ✔ | ✔ | ✔ |
Обозреватель данных Azure | ✔ | ✔ | ✔ | ||
Azure SQL | ✔ | ✔ | ✔ | ✔ | |
Dapr4 | ✔ | ✔ | ✔ | ✔ | |
Сетка событий | ✔ | ✔ | ✔ | ✔ | |
Центры событий | ✔ | ✔ | ✔ | ✔ | |
HTTP и вебхуки | ✔ | ✔ | ✔ | ✔ | |
Центр IoT | ✔ | ✔ | ✔ | ||
Kafka3 | ✔ | ✔ | ✔ | ||
Мобильные приложения | ✔ | ✔ | ✔ | ||
Центры уведомлений | ✔ | ✔ | |||
хранилище очередей | ✔ | ✔ | ✔ | ✔ | |
Редис | ✔ | ✔ | ✔ | ✔ | |
RabbitMQ3 | ✔ | ✔ | ✔ | ||
SendGrid | ✔ | ✔ | ✔ | ||
Служебная шина | ✔ | ✔ | ✔ | ✔ | |
СигналР | ✔ | ✔ | ✔ | ✔ | |
хранилище таблиц | ✔ | ✔ | ✔ | ✔ | |
Таймер | ✔ | ✔ | ✔ | ||
Twilio | ✔ | ✔ | ✔ |
Примечания:
- Поддержка среды выполнения Azure Functions версии 1.x окончится 14 сентября 2026 г. Настоятельно рекомендуется перенести приложения в версию 4.x для полной поддержки.
- Начиная с среды выполнения версии 2.x все привязки, кроме ПРОТОКОЛА HTTP и Таймера, должны быть зарегистрированы. См. раздел "Регистрация расширений привязки".
- Триггеры не поддерживаются на тарифе «Потребление». Требует триггеров, управляемых во время выполнения.
- Поддерживается только в Kubernetes, IoT Edge и других автономных режимах.
Длительность времени ожидания приложения-функции
Продолжительность тайм-аута функций в функциональном приложении определяется свойством functionTimeout
в файле host.json проекта. Это свойство применяется специально к выполнению функций. После запуска триггера выполнение функции следует завершить или ответить в установленное время ожидания. Чтобы избежать времени ожидания, важно создавать надежные функции. Для получения дополнительной информации см. «Повышение производительности и надежности Azure Functions».
В следующей таблице приведены значения по умолчанию и максимальные значения (в минутах) для конкретных планов:
Планирование | По умолчанию | Максимум1 |
---|---|---|
План потребления Flex | 30 | Неограниченное2 |
План категории "Премиум" | 304 | Неограниченное2 |
Выделенный план | 304 | Безграничный3 |
Контейнерные приложения | 30 | Неограниченный5 |
План потребления | 5 | 10 |
- Независимо от параметра времени ожидания приложения-функции, 230 секунд — это максимальное время, затраченное функцией HTTP для реагирования на запрос. Это связано с временем простоя по умолчанию Azure Load Balancer. При более длительной обработке рассмотрите возможность использования асинхронного шаблона Устойчивых функций или отложите работу и получите немедленный ответ.
- Максимальное время ожидания выполнения не применяется. Однако льготный период, предоставленный выполнению функции, составляет 60 минут во время масштабирования планов Flex Consumption и Premium, а льготный период 10 минут предоставляется во время обновлений платформы.
- Требуется, чтобы план службы приложений был настроен на Always On. Льготный период 10 минут предоставляется во время обновлений платформы.
- Время ожидания по умолчанию для среды выполнения узла функций версии 1.x неограниченно.
- Если минимальное количество реплик равно нулю, время ожидания по умолчанию зависит от конкретных триггеров, используемых в приложении.
Связанный контент
Дополнительные сведения см. в следующих ресурсах:
- Разработка функций Azure локально с помощью основных средств
- Как настраивать версии среды выполнения Azure Functions
- Заметки о выпуске