Sdílet prostřednictvím


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 8 a .NET 9.

Důležité

Od 13. prosince 2022 dosáhly konce rozšířené podpory aplikace funkcí běžící na verzích 2.x a 3.x modulu runtime Azure Functions. 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.

Nezapomeňte vybrat upřednostňovaný vývojový jazyk v horní části článku.

Následující tabulka uvádí verze .NET podporované službou Azure Functions.

Podporovaná verze rozhraní .NET závisí na verzi modulu runtime Služby Functions a 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 Příručce pro spouštění funkcí Azure Functions jazyka C# v izolovaném pracovním modelu.

Podporovaná verze Úroveň podpory Očekávané datum ukončení podpory
.NET 9 GA 12. května 2026
.NET 8 GA 10. listopadu 2026
.NET Framework 4.8.1 GA Zobrazit zásady

Rozhraní .NET 6 bylo dříve podporováno v izolovaném modelu pracovních procesů, ale dosáhlo konce oficiální podpory 12. listopadu 2024.

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.

Pro více informací si přečtěte Průvodce spouštěním C# Azure Function v izolovaném modelu pracovníka.

Následující tabulka uvádí jazykové verze podporované pro funkce Java.

Podporovaná verze Úroveň podpory Podporováno do
Java 21 (jen pro Linux) GA Podívejte se na plán vydání a údržby.
Java 17 GA Podívejte se na plán vydání a údržby.
Java 11 GA Podívejte se na plán vydání a servisu.
Java 8 GA Podívejte se na tuto stránku podpory pro Temurin.

Další informace o vývoji a spouštění funkcí v Javě 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.

Podporovaná verze Úroveň podpory Očekávané datum ukončení podpory
Node.js 22 Náhled 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.

Podporovaná verze Úroveň podpory Očekávané datum ukončení podpory
PowerShell 7.5 GA 12. května 2026
PowerShell 7.4 GA 10. listopadu 2026

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.

Podporovaná verze Úroveň podpory Očekávané datum ukončení podpory
Python 3.12 Náhled Října 2028
Python 3.11 GA Října 2027
Python 3.10 GA Října 2026
Python 3.9 GA Října 2025

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 aktualizacích plánu 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. Pro stávající funkční aplikace postupujte podle pokynů k migraci .

Připnutí na konkrétní podverzi

Pokud chcete vyřešit problémy, které mohla aplikace funkcí mít 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řiřazení k menší verzi se liší v systému Windows a Linuxu. Další informace najdete v článku Jak cílit na verze runtime Azure Functions.

Starší podverze jsou pravidelně odstraňovány ze služby Functions. Nejnovější zprávy o vydáních Azure Functions, včetně odebrání konkrétních starších podverzí, sledujte v oznámeních Azure App Service.

Minimální verze rozšíření

Technicky vzato neexistuje přímá souvislost mezi verzemi rozšíření vazby a verzí prostředí 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.

Pro skript 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 Bez podpory GA
2.x Bez 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.

Verze 2.x a 3.x se už nepodporují kvůli ukončení podpory pro .NET Core 3.1, což byla 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 souboru .csproj v následujících vlastnostech:

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

Pokud používáte izolovaný pracovní model , můžete zvolit net8.0, net6.0nebo net48 jako cílový rámec. Můžete se také rozhodnout použít podporu preview pro net9.0. Pokud používáte model v procesu, můžete zvolit net8.0 nebo net6.0a musíte zahrnout rozšíření Microsoft.NET.Sdk.Functions nastavené nejméně na 4.4.0.

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 sady 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ůže být také potřeba aktualizovat nastavení uživatele pro azureFunctions.projectRuntime tak, 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 pro rozšíření vazeb jiných společností než Microsoft

  • Oddělení modulu runtime a vazeb Tato změna umožňuje, aby rozšíření vazeb mohla být verzována a nezávisle vydávána. 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. Pro více informací se podívejte na vzory vazeb Azure Functions.

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

Typ 1,x1 2.x a vyšší2 Spoušť Vstup Výstup
Úložiště Blob
Azure Cosmos DB
Azure Data Explorer
Azure SQL
Dapr4
Event Grid
Event Hubs
HTTP a webhooks
IoT Hub
Kafka3
Mobile Apps
Notification Hubs
Queue Storage
Redis
RabbitMQ3
SendGrid
Service Bus
SignalR
Ukládání tabulek
Č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 Rozšíření registru vazeb.
  3. Triggery nejsou v plánu typu 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 vypršení časového limitu aplikace funkcí

Časový limit pro funkce v aplikaci funkcí je definován functionTimeout vlastností v souboru projektu host.json . Tato vlastnost se vztahuje konkrétně na provádění funkcí. Jakmile trigger spustí spuštění funkce, musí funkce v rámci časového limitu vrátit nebo odpovědět. Aby nedocházelo k vypršení časového limitu, 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 flexibilní spotřeby 30 Nevázané2
Plán Premium 304 Nevázané2
Vyhrazený plán 304 Nevázané3
Container Apps 30 Neomezený5
Plán spotřeby 5 10
  1. Bez ohledu na nastavení časového limitu aplikace funkcí je maximálně 230 sekund maximální doba, po kterou může funkce aktivovaná protokolem HTTP reagovat na požadavek. 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 časového limitu provádě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 je neomezený.
  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ší informace naleznete v následujících zdrojích: