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.
De Durable Task SDK's zijn draagbare, opensource-bibliotheken voor het bouwen van duurzame indelingen, activiteiten en entiteiten met behulp van gewone code. Ze werken op elk rekenplatform: Azure Container Apps, Kubernetes of VM's. Elke SDK maakt verbinding met de Durable Task Scheduler als de beheerde back-end.
Gebruik de SDK's voor duurzame taken wanneer u het volgende moet doen:
- Werkstromen met meerdere stappen coördineren die herstarten van processen en infrastructuurstoringen overleven.
- Werk parallel verspreiden en de resultaten op betrouwbare wijze aggregeren.
- Wacht op externe gebeurtenissen (menselijke goedkeuringen, webhooks, timers) zonder rekenkracht te verbruiken.
- Draai op elk rekenplatform zonder beperkt te zijn tot Azure Functions.
Aanbeveling
Weet u niet zeker of u de DURABLE Task SDK's of Durable Functions wilt gebruiken? Zie Orkestratieframework kiezen. Zie Wat is Durable Task? voor een breder overzicht van het duurzame taakecosysteem.
Beschikbare duurzame taak-SDK's
De volgende tabel bevat een overzicht van de beschikbare Durable Task SDK's, hun pakketten en waar u broncode en voorbeelden kunt vinden.
| Language | Pakketten | Status | bron | Voorbeelden |
|---|---|---|---|---|
| .NET | Microsoft.DurableTask.Worker.AzureManagedMicrosoft.DurableTask.Client.AzureManaged |
GA | durabletask-dotnet | .NET voorbeelden |
| Python | durabletask-azuremanaged |
GA | durabletask-python | Python-voorbeelden |
| Java | durabletask-clientdurabletask-azure-managed |
GA | durabletask-java | Java-voorbeelden |
| JavaScript/TypeScript | @microsoft/durabletask-js@microsoft/durabletask-js-azuremanaged |
Preview | durabletask-js | JS-voorbeelden |
| Go | github.com/microsoft/durabletask-go |
Bèta | durabletask-go | Go-voorbeelden |
Installation
Elke SDK biedt een worker voor het uitvoeren van orkestraties, activiteiten en entiteiten, en een client voor het plannen en beheren van instanties. Afhankelijk van de taal worden deze componenten geleverd in aparte pakketten of in één pakket of module. Installeer de pakketten die voor jouw taal worden getoond.
dotnet add package Microsoft.DurableTask.Worker.AzureManaged
dotnet add package Microsoft.DurableTask.Client.AzureManaged
De .NET SDK werkt met elk .NET hostingmodel: ASP.NET Core, console-apps of werkrolservices. Het biedt ondersteuning voor typeveilige indeling en activiteitsdefinities met brongeneratoren en kan worden geïntegreerd met afhankelijkheidsinjectie.
Aan de slag
Alle SDK's volgen hetzelfde patroon:
Installeer de SDK-pakketten of module voor jouw taal. Zie de installatie.
Start de emulator voor lokale ontwikkeling met behulp van Docker:
docker run --name dtsemulator -d -p 8080:8080 -p 8082:8082 mcr.microsoft.com/dts/dts-emulator:latestDefinieer orchestraties en activiteiten in uw toepassingscode.
Start een worker voor het verwerken van orkestratie- en activiteitswerkitems.
Gebruik de client om nieuwe orchestratie-instanties in te plannen en hun status op te vragen.
Zie quickstart: Een app maken met Durable Task SDK's voor een overzicht met werkende code.
Vergelijking van functies
In de volgende tabel ziet u de functies die elke SDK ondersteunt.
| Feature | .NET | Python | Java | JavaScript | Go (beta) |
|---|---|---|---|---|---|
| Orchestrationen | ✅ | ✅ | ✅ | ✅ | ✅ |
| activiteiten | ✅ | ✅ | ✅ | ✅ | ✅ |
| Suborkestraties | ✅ | ✅ | ✅ | ✅ | ✅ |
| Duurzame timers | ✅ | ✅ | ✅ | ✅ | ✅ |
| Externe gebeurtenissen | ✅ | ✅ | ✅ | ✅ | ✅ |
| Duurzame entiteiten | ✅ | ✅ | ✅ | ✅ | ✅ |
| Beleid opnieuw proberen | ✅ | ✅ | ✅ | ✅ | ✅ |
| Doorgaan als nieuw | ✅ | ✅ | ✅ | ✅ | ✅ |
| Onderbreken/hervatten | ✅ | ✅ | ✅ | ✅ | ✅ |