Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Functions ondersteunt momenteel twee versies van de runtime-host. De volgende tabel bevat informatie over de momenteel ondersteunde runtime-versies, het ondersteuningsniveau en wanneer ze moeten worden gebruikt:
Versie | Ondersteuningsniveau | Beschrijving |
---|---|---|
4.x | GA | Aanbevolen runtimeversie voor functies in alle talen.Bekijk ondersteunde taalversies. |
1.x | GA (ondersteuning eindigt op 14 september 2026) | Alleen ondersteund voor C#-apps die .NET Framework moeten gebruiken. Deze versie bevindt zich in de onderhoudsmodus, met verbeteringen alleen in latere versies. De ondersteuning wordt op 14 september 2026 beëindigd voor versie 1.x. U wordt ten zeerste aangeraden uw apps te migreren naar versie 4.x, die ondersteuning biedt voor .NET Framework 4.8, .NET 8 en .NET 9. |
Belangrijk
Vanaf 13 december 2022 bereikten functie-apps die worden uitgevoerd op versie 2.x en 3.x van de Azure Functions-runtime het einde van de uitgebreide ondersteuning. Zie Buiten gebruik gestelde versies voor meer informatie.
In dit artikel worden enkele van de verschillen beschreven tussen ondersteunde versies, hoe u elke versie kunt maken en hoe u de versie wijzigt waarop uw functies worden uitgevoerd.
Ondersteuningsniveaus
Er zijn twee ondersteuningsniveaus:
- Algemeen beschikbaar (GA): volledig ondersteund en goedgekeurd voor productiegebruik.
- Preview - nog niet ondersteund, maar verwachtte dat deze de GA-status in de toekomst bereikt.
Talen
Alle functies in een functie-app moeten dezelfde taal delen. U kiest de taal van functies in uw functie-app wanneer u de app maakt. De taal van uw functie-app wordt onderhouden in de FUNCTIONS_WORKER_RUNTIME-instelling en kan niet worden gewijzigd wanneer er bestaande functies zijn.
Zorg ervoor dat u bovenaan het artikel de gewenste ontwikkeltaal selecteert.
In de volgende tabel ziet u de .NET-versies die worden ondersteund door Azure Functions.
De ondersteunde versie van .NET is afhankelijk van zowel de runtimeversie van Functions als het door u gekozen uitvoeringsmodel:
Uw functiecode wordt uitgevoerd in een afzonderlijk .NET-werkproces. Gebruiken met ondersteunde versies van .NET en .NET Framework. Zie Handleiding voor het uitvoeren van C# Azure Functions in het geïsoleerde werkrolmodel voor meer informatie.
Ondersteunde versie | Ondersteuningsniveau | Verwachte einddatum van de ondersteuning |
---|---|---|
.NET 9 | GA | 12 mei 2026 |
.NET 8 | GA | 10 november 2026 |
.NET Framework 4.8.1 | GA | Beleid weergeven |
.NET 6 werd eerder ondersteund op het model voor geïsoleerde taken, maar heeft het einde van de officiële ondersteuning bereikt op 12 november 2024.
.NET 7 werd eerder ondersteund in het geïsoleerde werkermodel, maar bereikte het einde van de officiële ondersteuning op 14 mei 2024.
Zie Handleiding voor het uitvoeren van C# Azure Functions in het geïsoleerde werkrolmodel voor meer informatie.
In de volgende tabel ziet u de taalversies die worden ondersteund voor Java-functies.
Ondersteunde versie | Ondersteuningsniveau | Ondersteund tot |
---|---|---|
Java 21 (alleen Linux) | GA | Zie de routekaart voor release en onderhoud. |
Java 17 | GA | Zie het releaseschema en onderhoudsschema. |
Java 11 | GA | Zie de release- en onderhoudsroadmap. |
Java 8 | GA | Zie deze Temurin-ondersteuningspagina. |
Zie de Ontwikkelaarshandleiding voor Azure Functions Java voor meer informatie over het ontwikkelen en uitvoeren van Java-functies.
In de volgende tabel ziet u de taalversies die worden ondersteund voor Node.js functies.
Ondersteunde versie | Ondersteuningsniveau | Verwachte einddatum van de ondersteuning |
---|---|---|
Node.js 22 | Voorbeeldweergave | 30 april 2027 |
Node.js 20 | GA | 30 april 2026 |
Node.js 18 | GA | 30 april 2025 |
JavaScript-ondersteuning voor TypeScript gebeurt via transpileren. Zie de ontwikkelaarshandleiding voor Azure Functions Node.js voor meer informatie.
In de volgende tabel ziet u de taalversie die wordt ondersteund voor PowerShell-functies.
Ondersteunde versie | Ondersteuningsniveau | Verwachte einddatum van de ondersteuning |
---|---|---|
PowerShell 7.5 | GA | dinsdag 12 mei 2026 |
PowerShell 7.4 | GA | 10 november 2026 |
Zie de ontwikkelaarshandleiding voor Azure Functions PowerShell voor meer informatie.
In de volgende tabel ziet u de taalversies die worden ondersteund voor Python-functies.
Ondersteunde versie | Ondersteuningsniveau | Verwachte einddatum van de ondersteuning |
---|---|---|
Python 3.12 | Voorbeeldweergave | Oktober 2028 |
Python 3.11 | GA | Oktober 2027 |
Python 3.10 | GA | Oktober 2026 |
Python 3.9 | GA | Oktober 2025 |
Zie de ontwikkelaarshandleiding voor Azure Functions Python voor meer informatie.
Zie de azure roadmap-updates voor informatie over geplande wijzigingen in taalondersteuning.
Zie Buiten gebruik gestelde runtime-versies voor informatie over de taalversies van eerder ondersteunde versies van de Functions-runtime.
Uitvoeren op een specifieke versie
De versie van de Functions-runtime die wordt gebruikt door gepubliceerde apps in Azure, wordt bepaald door de FUNCTIONS_EXTENSION_VERSION
toepassingsinstelling. In sommige gevallen en voor bepaalde talen kunnen andere instellingen worden toegepast.
Functie-apps die zijn gemaakt in Azure Portal, door de Azure CLI of vanuit Visual Studio-hulpprogramma's, worden standaard ingesteld op versie 4.x. U kunt deze versie indien nodig wijzigen. U kunt de runtimeversie alleen downgraden naar 1.x nadat u uw functie-app hebt gemaakt, maar voordat u functies toevoegt. Het bijwerken naar een latere primaire versie is zelfs toegestaan bij apps met bestaande functies.
Bestaande functie-apps migreren
Wanneer uw app bestaande functies heeft, moet u voorzorgsmaatregelen nemen voordat u overstapt op een latere primaire runtimeversie. In de volgende artikelen worden belangrijke wijzigingen tussen belangrijke versies beschreven, waaronder taalspecifieke wijzigingen die fouten veroorzaken. Ze bieden u ook stapsgewijze instructies voor een geslaagde migratie van uw bestaande functie-app.
De versie van apps in Azure wijzigen
De volgende primaire runtimeversiewaarden worden gebruikt:
Waarde | Runtimedoel |
---|---|
~4 |
4.x |
~1 |
1.x |
Belangrijk
Wijzig deze app-instelling niet willekeurig, omdat andere app-instellingswijzigingen en wijzigingen in uw functiecode mogelijk vereist zijn. Volg de migratie-instructies voor bestaande functie-apps.
Vastmaken aan een specifieke secundaire versie
Als u problemen wilt oplossen die uw functie-app kan hebben wanneer deze wordt uitgevoerd op de nieuwste primaire versie, moet u uw app tijdelijk vastmaken aan een specifieke secundaire versie. Vastzetten geeft u tijd om uw app correct te laten werken op de nieuwste belangrijkste versie. De manier waarop u een secundaire versie vastpint, verschilt tussen Windows en Linux. Voor meer informatie, zie Hoe u de runtimeversies van Azure Functions kunt richten.
Oudere secundaire versies worden periodiek verwijderd uit Functions. Voor het laatste nieuws over Azure Functions-releases, waaronder het verwijderen van specifieke oudere versies, controleert u de Azure App Service-aankondigingen.
Minimale uitbreidingsversies
Er is technisch gezien geen correlatie tussen bindingsuitbreidingsversies en de Runtime-versie van Functions. Vanaf versie 4.x dwingt de Functions-runtime echter een minimale versie af voor alle trigger- en bindingsextensies.
Als u een waarschuwing ontvangt over een pakket dat niet voldoet aan een minimaal vereiste versie, moet u dat NuGet-pakket bijwerken naar de minimale versie zoals u dat normaal zou doen. De minimale versievereisten voor extensies die worden gebruikt in Functions v4.x vindt u in het gekoppelde configuratiebestand.
Werk voor C#-script de referentie van de extensiebundel bij als volgt in de host.json :
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Er is technisch gezien geen correlatie tussen extensiebundelversies en de Runtime-versie van Functions. Vanaf versie 4.x dwingt de Functions-runtime echter een minimale versie af voor extensiebundels.
Als u een waarschuwing ontvangt over de uitbreidingsbundelversie die niet voldoet aan een minimaal vereiste versie, werkt u de bestaande extensiebundelverwijzing als volgt bij in de host.json :
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Zie Uitbreidingsbundels voor meer informatie over uitbreidingsbundels.
Buiten gebruik gestelde versies
Belangrijk
De ondersteuning wordt beëindigd voor versie 1.x van de Azure Functions-runtime op 14 september 2026. We raden u ten zeerste aan uw apps te migreren naar versie 4.x voor volledige ondersteuning.
Deze versies van de Functions-runtime bereikten het einde van de uitgebreide ondersteuning op 13 december 2022.
Versie | Huidig ondersteuningsniveau | Vorig ondersteuningsniveau |
---|---|---|
3.x | Niet meer ondersteund | GA |
2.x | Niet meer ondersteund | GA |
U moet uw apps zo snel mogelijk migreren naar versie 4.x om volledige ondersteuning te krijgen. Zie Apps migreren naar Azure Functions versie 4.x voor een volledige set taalspecifieke migratie-instructies.
Apps met versie 2.x en 3.x kunnen nog steeds worden gemaakt en geïmplementeerd vanuit uw CI/CD DevOps-pijplijn en alle bestaande apps blijven actief zonder wijzigingen die fouten veroorzaken. Uw apps komen echter niet in aanmerking voor nieuwe functies, beveiligingspatches en prestatieoptimalisaties. U kunt alleen verwante serviceondersteuning krijgen nadat u uw apps hebt bijgewerkt naar versie 4.x.
Versies 2.x en 3.x worden niet meer ondersteund vanwege het einde van de ondersteuning voor .NET Core 3.1, een kernafhankelijkheid. Deze vereiste is van invloed op alle talen die worden ondersteund door Azure Functions.
Lokaal ontwikkelde toepassingsversies
U kunt de volgende updates aanbrengen voor functie-apps om de doelversies lokaal te wijzigen.
Runtimeversies van Visual Studio
In Visual Studio selecteert u de runtimeversie wanneer u een project maakt. Azure Functions-hulpprogramma's voor Visual Studio ondersteunen de twee primaire runtimeversies. De juiste versie wordt gebruikt bij het opsporen en publiceren van fouten op basis van projectinstellingen. De versie-instellingen worden gedefinieerd in het . csproj-bestand in de volgende eigenschappen:
<TargetFramework>net8.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>
Als u het geïsoleerde werkermodell gebruikt, kunt u kiezen voor net8.0
, net6.0
, of net48
als doelplatform. U kunt er ook voor kiezen om preview-ondersteuning te gebruiken voor net9.0
. Als u het in-process model gebruikt, kunt u kiezen net8.0
of net6.0
, en moet u de Microsoft.NET.Sdk.Functions
extensie instellen op ten minste 4.4.0
.
.NET 7 werd eerder ondersteund op het geïsoleerde werkermodel, maar bereikte het einde van de officiële ondersteuning op 14 mei 2024.
Visual Studio Code en Azure Functions Core Tools
Azure Functions Core Tools wordt gebruikt voor het ontwikkelen van opdrachtregels en ook door de Azure Functions-extensie voor Visual Studio Code. Zie De Azure Functions Core Tools installeren voor meer informatie.
Voor visual Studio Code-ontwikkeling moet u mogelijk ook de gebruikersinstelling bijwerken zodat deze azureFunctions.projectRuntime
overeenkomt met de versie van de geïnstalleerde hulpprogramma's. Met deze instelling worden ook de sjablonen en talen bijgewerkt die worden gebruikt tijdens het maken van de functie-app.
Bindingen
Vanaf versie 2.x maakt de runtime gebruik van een nieuw uitbreidbaarheidsmodel voor bindingen dat deze voordelen biedt:
Ondersteuning voor niet-Microsoft-bindingsextensies.
Ontkoppeling van runtime en bindingen. Met deze wijziging kunnen bindingsextensies onafhankelijk van elkaar worden geversied en vrijgegeven. U kunt er bijvoorbeeld voor kiezen om een upgrade uit te voeren naar een versie van een extensie die afhankelijk is van een nieuwere versie van een onderliggende SDK.
Een lichtere uitvoeringsomgeving, waarbij alleen de bindingen die in gebruik zijn bekend en geladen door de runtime.
Met uitzondering van HTTP- en timertriggers moeten alle bindingen expliciet worden toegevoegd aan het functie-app-project of worden geregistreerd in de portal. Zie Azure Functions-bindingexpressiepatronen voor meer informatie.
Dit tabel geeft de bindingen weer die worden ondersteund in de belangrijkste versies van de Azure Functions-runtime:
Type | 1.x1 | 2.x en hoger2 | Activator | Invoer | Uitvoer |
---|---|---|---|---|---|
Blob Storage | ✔ | ✔ | ✔ | ✔ | ✔ |
Azure Cosmos DB | ✔ | ✔ | ✔ | ✔ | ✔ |
Azure Data Explorer | ✔ | ✔ | ✔ | ||
Azure SQL | ✔ | ✔ | ✔ | ✔ | |
Dapr4 | ✔ | ✔ | ✔ | ✔ | |
Event Grid | ✔ | ✔ | ✔ | ✔ | |
Event Hubs | ✔ | ✔ | ✔ | ✔ | |
HTTP en webhooks | ✔ | ✔ | ✔ | ✔ | |
IoT Hub | ✔ | ✔ | ✔ | ||
Kafka3 | ✔ | ✔ | ✔ | ||
Mobile Apps | ✔ | ✔ | ✔ | ||
Notification Hubs | ✔ | ✔ | |||
Queue Storage | ✔ | ✔ | ✔ | ✔ | |
Redis | ✔ | ✔ | ✔ | ✔ | |
RabbitMQ3 | ✔ | ✔ | ✔ | ||
SendGrid | ✔ | ✔ | ✔ | ||
Service Bus | ✔ | ✔ | ✔ | ✔ | |
SignalR | ✔ | ✔ | ✔ | ✔ | |
Tabelopslag | ✔ | ✔ | ✔ | ✔ | |
Timer | ✔ | ✔ | ✔ | ||
Twilio | ✔ | ✔ | ✔ |
Opmerkingen:
- De ondersteuning wordt beëindigd voor versie 1.x van de Azure Functions-runtime op 14 september 2026. We raden u ten zeerste aan uw apps te migreren naar versie 4.x voor volledige ondersteuning.
- Vanaf de runtime van versie 2.x moeten alle bindingen behalve HTTP en Timer worden geregistreerd. Raadpleeg Bindingextensies registreren.
- Triggers worden niet ondersteund in het verbruiksabonnement. Vereist uitvoeringstijdgestuurde triggers.
- Ondersteund alleen in Kubernetes-, IoT Edge- en andere zelfgehoste modi.
Time-outduur van functie-app
De time-outduur voor functies in een functie-app wordt gedefinieerd door de functionTimeout
eigenschap in het host.json projectbestand. Deze eigenschap is specifiek van toepassing op functie-uitvoeringen. Nadat de trigger de uitvoering van de functie start, moet de functie binnen de time-outduur retourneren/reageren. Om time-outs te voorkomen, is het belangrijk om robuuste functies te schrijven. Zie Prestaties en betrouwbaarheid van Azure Functions verbeteren voor meer informatie.
In de volgende tabel ziet u de standaard- en maximumwaarden (in minuten) voor specifieke plannen:
Plannen | Standaard | Maximum1 |
---|---|---|
Flex Consumption-abonnement | 30 | Niet-gebonden2 |
Premium-abonnement | 304 | Niet-gebonden2 |
Toegewezen abonnement | 304 | Niet-gebonden3 |
Container Apps | 30 | Niet-gebonden5 |
Verbruiksabonnement | 5 | 10 |
- Ongeacht de time-outinstelling van de functie-app, is 230 seconden de maximale hoeveelheid tijd die een door HTTP geactiveerde functie kan duren om te reageren op een aanvraag. Dit komt door de standaard time-out voor inactiviteit van Azure Load Balancer. Overweeg voor langere verwerkingstijden het asynchrone Durable Functions-patroon te gebruiken of stel het werk uit en stuur onmiddellijk een antwoord terug.
- Er is geen maximale time-outduur voor uitvoering afgedwongen. De respijtperiode die aan een functie-uitvoering wordt gegeven, is echter 60 minuten tijdens de inschaal voor de Flex Consumption- en Premium-abonnementen en er wordt een respijtperiode van 10 minuten gegeven tijdens platformupdates.
- Vereist dat het App Service-plan is ingesteld op AlwaysOn. Er wordt een respijtperiode van 10 minuten gegeven tijdens platformupdates.
- De standaardtime-out voor versie 1.x van de Functions-hostruntime is onbegrensd.
- Wanneer het minimale aantal replica's is ingesteld op nul, is de standaardtime-out afhankelijk van de specifieke triggers die in de app worden gebruikt.
Verwante inhoud
Voor meer informatie raadpleegt u de volgende bronnen: