Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Gli SDK durable task sono librerie open source portabili per la creazione di orchestrazioni durevoli, attività ed entità che usano codice ordinario. Funzionano su qualsiasi piattaforma di calcolo, App contenitore di Azure, Kubernetes o VM. Ogni SDK si connette al Durable Task Scheduler, utilizzato come back-end gestito.
Usare gli SDK per le attività permanenti quando è necessario:
- Orchestrare flussi di lavoro in più passaggi che sopravvivono ai riavvii del processo e agli errori dell'infrastruttura.
- Eseguire l'operazione di fan-out in parallelo e aggregare i risultati in modo affidabile.
- Attendere eventi esterni (approvazioni umane, webhook, timer) senza utilizzare il calcolo.
- Esegui su qualsiasi piattaforma di calcolo senza essere bloccato su Funzioni di Azure.
Suggerimento
Non sei sicuro se utilizzare i Durable Task SDK o le Durable Functions? Vedere Scegliere il framework di orchestrazione. Per una panoramica più ampia dell'ecosistema Durable Task, vedere Che cos'è Durable Task?.
Durable Task SDK disponibili
La tabella seguente riepiloga gli SDK di Durable Task disponibili, i relativi pacchetti e dove trovare il codice sorgente e gli esempi.
| Lingua | Packages | Condizione | origine | Esempi |
|---|---|---|---|---|
| .NET | Microsoft.DurableTask.Worker.AzureManagedMicrosoft.DurableTask.Client.AzureManaged |
GA | durabletask-dotnet | Esempi .NET |
| Python | durabletask-azuremanaged |
GA | durabletask-python | Esempi di Python |
| Java | durabletask-clientdurabletask-azure-managed |
GA | durabletask-java | Esempi di Java |
| JavaScript/TypeScript | @microsoft/durabletask-js@microsoft/durabletask-js-azuremanaged |
Preview | durabletask-js | Esempi JS |
| Go | github.com/microsoft/durabletask-go |
Versione Beta | durabletask-go | Esempi Go |
Installazione
Ogni SDK fornisce un worker per eseguire orchestrazioni, attività ed entità, e un client per la pianificazione e la gestione delle istanze. A seconda del linguaggio, questi componenti vengono distribuiti in pacchetti separati o in un unico pacchetto o modulo. Installa i pacchetti mostrati per la tua lingua.
dotnet add package Microsoft.DurableTask.Worker.AzureManaged
dotnet add package Microsoft.DurableTask.Client.AzureManaged
.NET SDK funziona con qualsiasi modello di hosting .NET: ASP.NET Core, app console o servizi di lavoro. Supporta definizioni di orchestrazione e attività indipendenti dai tipi con i generatori di codice sorgente e si integra con l'inserimento delle dipendenze.
Inizia subito
Tutti gli SDK seguono lo stesso modello:
Installa i pacchetti SDK o il modulo per il tuo linguaggio. Vedere Installazione.
Avviare l'emulatore per lo sviluppo locale con Docker:
docker run --name dtsemulator -d -p 8080:8080 -p 8082:8082 mcr.microsoft.com/dts/dts-emulator:latestDefinire orchestrazioni e attività nel codice dell'applicazione.
Avviare un processo di lavoro per elaborare gli elementi di lavoro di orchestrazione e attività.
Usare il client per pianificare nuove istanze di orchestrazione ed eseguire query sul relativo stato.
Per una procedura dettagliata con codice funzionante, vedere Avvio rapido: Creare un'app con GLI SDK per attività permanenti.
Confronto delle funzionalità
La tabella seguente illustra le funzionalità supportate da ogni SDK.
| Feature | .NET | Python | Java | JavaScript | Go (beta) |
|---|---|---|---|---|---|
| Orchestrazioni | ✅ | ✅ | ✅ | ✅ | ✅ |
| attività | ✅ | ✅ | ✅ | ✅ | ✅ |
| Orchestrazioni secondarie | ✅ | ✅ | ✅ | ✅ | ✅ |
| Timer durevoli | ✅ | ✅ | ✅ | ✅ | ✅ |
| Eventi esterni | ✅ | ✅ | ✅ | ✅ | ✅ |
| Entità durevoli | ✅ | ✅ | ✅ | ✅ | ✅ |
| Criteri di ripetizione dei tentativi | ✅ | ✅ | ✅ | ✅ | ✅ |
| Continuare come nuovo | ✅ | ✅ | ✅ | ✅ | ✅ |
| Sospensione/ripresa | ✅ | ✅ | ✅ | ✅ | ✅ |