Přehled verzí modulu runtime Azure Functions

Azure Functions v současné době podporuje dvě verze hostitele modulu runtime. Následující tabulka obsahuje podrobnosti o aktuálně podporovaných verzích modulu runtime, jejich úrovni podpory a o tom, kdy se mají použít:

Verze Úroveň podpory Popis
4.x GA Doporučená verze modulu runtime pro funkce ve všech jazycích Podívejte se na podporované jazykové verze.
1.x Ga (podpora končí 14. září 2026) Podporováno pouze pro aplikace jazyka C#, které musí používat rozhraní .NET Framework. Tato verze je v režimu údržby s vylepšeními poskytovanými pouze v novějších verzích. Podpora pro verzi 1.x skončí 14. září 2026. Důrazně doporučujeme migrovat aplikace na verzi 4.x, která podporuje rozhraní .NET Framework 4.8, .NET 6, .NET 8 a .NET 9.

Důležité

Od 13. prosince 2022 došly aplikace funkcí běžící na verzích 2.x a 3.x modulu runtime Azure Functions ke konci rozšířené podpory. Další informace naleznete v tématu Vyřazené verze.

Tento článek podrobně popisuje některé rozdíly mezi podporovanými verzemi, jak můžete vytvořit jednotlivé verze a jak změnit verzi, na které běží vaše funkce.

Úrovně podpory

Existují dvě úrovně podpory:

  • Obecně dostupná (GA) – plně podporovaná a schválená pro použití v produkčním prostředí.
  • Preview – Zatím není podporováno, ale očekává se, že v budoucnu dosáhne stavu ga.

Jazyky

Všechny funkce v aplikaci funkcí musí sdílet stejný jazyk. Při vytváření aplikace funkcí zvolíte jazyk funkcí. Jazyk vaší aplikace funkcí se udržuje v nastavení FUNCTIONS_WORKER_RUNTIME a není možné ho změnit, pokud existují funkce.

Následující tabulka uvádí verze .NET podporované službou Azure Functions. V horní části článku vyberte upřednostňovaný vývojový jazyk.

Podporovaná verze rozhraní .NET závisí na vaší verzi modulu runtime Služby Functions i na zvoleném modelu spouštění:

Kód funkce se spouští v samostatném pracovním procesu .NET. Používá se s podporovanými verzemi rozhraní .NET a .NET Framework. Další informace najdete v tématu Vývoj funkcí izolovaného pracovního procesu .NET.

Podporovaná verze Úroveň podpory Očekávané datum EOL komunity
.NET 9 Preview Zobrazit zásady
.NET 8 GA 10. listopadu 2026
.NET 6 GA 12. listopadu 2024
.NET Framework 4.8 GA Zobrazit zásady

Rozhraní .NET 7 bylo dříve podporováno v izolovaném modelu pracovních procesů, ale dosáhlo konce oficiální podpory 14. května 2024.

Další informace najdete v průvodci spuštěním služby Azure Functions v jazyce C# v izolovaném pracovním procesu.

Následující tabulka uvádí jazykové verze podporované pro funkce Java. V horní části článku vyberte upřednostňovaný vývojový jazyk.

Podporovaná verze Úroveň podpory Očekávané datum EOL komunity
Java 21 (jen pro Linux) Preview Září 2028
Java 17 GA Září 2027
Java 11 GA Září 2027
Java 8 GA 30. listopadu 2026

Další informace najdete v příručce pro vývojáře v Javě pro Azure Functions.

Následující tabulka uvádí jazykové verze podporované pro Node.js funkce. V horní části článku vyberte upřednostňovaný vývojový jazyk.

Podporovaná verze Úroveň podpory Očekávané datum EOL komunity
Node.js 22 Preview 30. dubna 2027
Node.js 20 GA 30. dubna 2026
Node.js 18 GA 30. dubna 2025

TypeScript se podporuje prostřednictvím překladu do JavaScriptu. Další informace najdete v příručce pro vývojáře služby Azure Functions Node.js.

Následující tabulka uvádí jazykovou verzi podporovanou pro funkce PowerShellu. V horní části článku vyberte upřednostňovaný vývojový jazyk.

Podporovaná verze Úroveň podpory Očekávané datum EOL komunity
PowerShell 7.4 GA 10. listopadu 2026
PowerShell 7.2 GA pátek 8. listopadu 2024

Další informace najdete v příručce pro vývojáře Azure Functions PowerShellu.

Následující tabulka uvádí jazykové verze podporované pro funkce Pythonu. V horní části článku vyberte upřednostňovaný vývojový jazyk.

Podporovaná verze Úroveň podpory Očekávané datum EOL komunity
Python 3.11 GA Října 2027
Python 3.10 GA Října 2026
Python 3.9 GA Října 2025
Python 3.8 GA Října 2024

Další informace najdete v příručce pro vývojáře v Pythonu pro Azure Functions.

Informace o plánovaných změnách podpory jazyků najdete v plánu nasazení produktů Azure.

Informace o jazykových verzích dříve podporovaných verzí modulu runtime Functions naleznete v tématu Vyřazené verze modulu runtime.

Spuštění v konkrétní verzi

Verze modulu runtime Functions používaného publikovanými aplikacemi FUNCTIONS_EXTENSION_VERSION v Azure je diktována nastavením aplikace. V některých případech a v některých jazycích se můžou použít jiná nastavení.

Ve výchozím nastavení jsou aplikace funkcí vytvořené na webu Azure Portal, pomocí Azure CLI nebo z nástrojů sady Visual Studio nastavené na verzi 4.x. V případě potřeby můžete tuto verzi upravit. Po vytvoření aplikace funkcí můžete downgradovat pouze verzi modulu runtime na verzi 1.x, ale před přidáním jakýchkoli funkcí. Aktualizace na novější hlavní verzi je povolená i u aplikací, které mají existující funkce.

Migrace existujících aplikací funkcí

Pokud má vaše aplikace existující funkce, musíte před přechodem na novější hlavní verzi modulu runtime provést preventivní opatření. Následující články popisují zásadní změny mezi hlavními verzemi, včetně zásadních změn specifických pro jednotlivé jazyky. Poskytují také podrobné pokyny pro úspěšnou migraci vaší stávající aplikace funkcí.

Změna verze aplikací v Azure

Používají se následující hlavní hodnoty verze modulu runtime:

Hodnota Cíl modulu runtime
~4 4.x
~1 1.x

Důležité

Toto nastavení aplikace neměňte libovolně, protože se můžou vyžadovat jiné změny nastavení aplikace a změny kódu funkce. U existujících aplikací funkcí postupujte podle pokynů k migraci.

Připnutí na konkrétní podverzi

Pokud chcete vyřešit problémy, které mohla mít aplikace funkcí při spuštění na nejnovější hlavní verzi, musíte dočasně připnout aplikaci na konkrétní podverzi. Připnutí vám dává čas, abyste aplikaci správně spustili na nejnovější hlavní verzi. Způsob připnutí na podverzi se liší mezi Windows a Linuxem. Další informace najdete v tématu Cílení na verze modulu runtime Azure Functions.

Starší podverze se pravidelně odebírají ze služby Functions. Nejnovější zprávy o vydaných verzích Azure Functions, včetně odebrání konkrétních starších podverzí, monitorujte oznámení služby Aplikace Azure.

Minimální verze rozšíření

Technicky vzato neexistuje korelace mezi verzemi rozšíření vazby a verzí modulu runtime Služby Functions. Počínaje verzí 4.x však modul runtime Functions vynucuje minimální verzi pro všechna rozšíření triggerů a vazeb.

Pokud se zobrazí upozornění na balíček, který nesplňuje minimální požadovanou verzi, měli byste balíček NuGet aktualizovat na minimální verzi, jak byste normálně chtěli. Minimální požadavky na verzi pro rozšíření používaná ve službě Functions v4.x najdete v propojeném konfiguračním souboru.

V případě skriptu jazyka C# aktualizujte odkaz na sadu rozšíření v host.json následujícím způsobem:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Technicky vzato neexistuje korelace mezi verzemi sady rozšíření a verzí modulu runtime služby Functions. Počínaje verzí 4.x však modul runtime Functions vynucuje minimální verzi pro sady rozšíření.

Pokud se zobrazí upozornění na verzi sady rozšíření, která nesplňuje minimální požadovanou verzi, aktualizujte stávající odkaz na sadu rozšíření v host.json následujícím způsobem:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Další informace o sadách rozšíření najdete v tématu Sady rozšíření.

Vyřazené verze

Důležité

Podpora pro modul runtime Azure Functions verze 1.x skončí 14. září 2026. Důrazně doporučujeme migrovat aplikace na verzi 4.x , abyste měli plnou podporu.

Tyto verze modulu runtime Functions dosáhly konce rozšířené podpory 13. prosince 2022.

Verze Aktuální úroveň podpory Předchozí úroveň podpory
3.x Nedostatek podpory GA
2.x Nedostatek podpory GA

Co nejdříve byste měli migrovat aplikace na verzi 4.x, abyste získali plnou podporu. Kompletní sadu pokynů pro migraci specifickou pro konkrétní jazyk najdete v tématu Migrace aplikací do Azure Functions verze 4.x.

Aplikace používající verze 2.x a 3.x se stále dají vytvářet a nasazovat z kanálu CI/CD DevOps a všechny stávající aplikace se budou dál spouštět bez zásadních změn. Vaše aplikace ale nemají nárok na nové funkce, opravy zabezpečení a optimalizace výkonu. Související podporu služeb můžete získat pouze po upgradu aplikací na verzi 4.x.

Konec podpory pro verze 2.x a 3.x je způsoben ukončením podpory pro .NET Core 3.1, kterou měly jako základní závislost. Tento požadavek má vliv na všechny jazyky podporované službou Azure Functions.

Místně vyvinuté verze aplikací

V aplikacích funkcí můžete provést následující aktualizace pro místní změnu cílových verzí.

Verze modulu runtime sady Visual Studio

V sadě Visual Studio vyberete při vytváření projektu verzi modulu runtime. Nástroje Azure Functions pro Visual Studio podporují dvě hlavní verze modulu runtime. Správná verze se používá při ladění a publikování na základě nastavení projektu. Nastavení verze jsou definována v .csproj souboru v následujících vlastnostech:

<TargetFramework>net8.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>

Pokud používáte izolovaný model pracovního procesu, můžete zvolit, net8.0, net6.0, nebo net48 jako cílovou architekturu. Můžete se také rozhodnout použít podporu verze Preview pro net9.0. Pokud používáte model v procesu, můžete zvolit net8.0 nebo net6.0a musíte zahrnout příponu nastavenou Microsoft.NET.Sdk.Functions alespoň 4.4.0na hodnotu .

Rozhraní .NET 7 bylo dříve podporováno v izolovaném modelu pracovních procesů, ale dosáhlo konce oficiální podpory 14. května 2024.

Visual Studio Code a nástroje Azure Functions Core Tools

Nástroje Azure Functions Core Tools se používají k vývoji příkazového řádku a také rozšířením Azure Functions pro Visual Studio Code. Další informace najdete v tématu Instalace nástrojů Azure Functions Core Tools.

Pro vývoj editoru Visual Studio Code můžete také muset aktualizovat uživatelské nastavení tak azureFunctions.projectRuntime , aby odpovídalo verzi nainstalovaných nástrojů. Toto nastavení také aktualizuje šablony a jazyky používané při vytváření aplikace funkcí.

Vazby

Počínaje verzí 2.x modul runtime používá nový model rozšiřitelnosti vazeb, který nabízí tyto výhody:

  • Podpora rozšíření vazeb třetích stran

  • Oddělení modulu runtime a vazeb Tato změna umožňuje, aby byla rozšíření vazeb verze a vydána nezávisle. Můžete se například rozhodnout upgradovat na verzi rozšíření, která závisí na novější verzi podkladové sady SDK.

  • Světlejší spouštěcí prostředí, ve kterém jsou známé a načteny modulem runtime pouze používané vazby.

Kromě triggerů HTTP a časovače musí být všechny vazby explicitně přidány do projektu aplikace funkcí nebo zaregistrovány na portálu. Další informace najdete v tématu Registrace rozšíření vazeb.

Následující tabulka uvádí, které vazby jsou podporovány v jednotlivých verzích modulu runtime.

Tato tabulka ukazuje vazby podporované v hlavních verzích modulu runtime Azure Functions:

Typ 1,x1 2.x a vyšší2 Trigger Vstup Výstup
Blob Storage
Azure Cosmos DB
Azure Data Explorer
Azure SQL
Dapr4
Event Grid
Event Hubs
HTTP a webhooky
IoT Hub
Kafka3
Mobile Apps
Notification Hubs
Queue Storage
Redis
RabbitMQ3
SendGrid
Service Bus
SignalR
Table Storage
Časovač
Twilio

Poznámky:

  1. Podpora pro modul runtime Azure Functions verze 1.x skončí 14. září 2026. Důrazně doporučujeme migrovat aplikace na verzi 4.x , abyste měli plnou podporu.
  2. Počínaje modulem runtime verze 2.x musí být zaregistrovány všechny vazby s výjimkou http a časovače. Viz Registrace rozšíření vazeb.
  3. Triggery nejsou v plánu Consumption podporované. Vyžaduje triggery řízené modulem runtime.
  4. Podporováno pouze v režimech Kubernetes, IoT Edge a dalších režimech v místním prostředí.

Doba trvání časového limitu aplikace funkcí

Doba trvání časového limitu pro funkce v aplikaci funkcí je definována functionTimeout vlastností v souboru projektu host.json . Tato vlastnost se vztahuje konkrétně na provádění funkcí. Po spuštění triggeru funkce musí funkce v době časového limitu vrátit nebo odpovědět. Aby nedocházelo k vypršení časových limitů, je důležité psát robustní funkce. Další informace najdete v tématu Zlepšení výkonu a spolehlivosti azure Functions.

Následující tabulka uvádí výchozí a maximální hodnoty (v minutách) pro konkrétní plány:

Plánování Výchozí Maximálně1
Plán Consumption 5 10
Plán Flex Consumption 30 Nevázané2
Plán Premium 304 Nevázané2
Vyhrazený plán 304 Nevázané3
Container Apps 30 Nevázaný5
  1. Bez ohledu na nastavení časového limitu aplikace funkcí může funkci aktivované protokolem HTTP trvat reakce na požadavek maximálně 230 sekund. Důvodem je výchozí časový limit nečinnosti služby Azure Load Balancer. V případě delší doby zpracování zvažte použití asynchronního vzoru Durable Functions nebo odložit skutečnou práci a vrátit okamžitou odpověď.
  2. Nevynucuje se žádná maximální doba trvání časového limitu spuštění. Období odkladu zadané pro provádění funkce je však během škálování pro plány Flex Consumption a Premium 60 minut a během aktualizací platformy se poskytuje období odkladu 10 minut.
  3. Vyžaduje, aby plán služby App Service byl nastavený na AlwaysOn. Během aktualizací platformy se poskytuje období odkladu 10 minut.
  4. Výchozí časový limit pro verzi 1.x modulu runtime hostitele Služby Functions není nevázaný.
  5. Pokud je minimální počet replik nastaven na nulu, výchozí časový limit závisí na konkrétních aktivačních událostech použitých v aplikaci.

Další kroky

Další informace naleznete v následujících zdrojích: