Durable Task SDK – přehled

Sady SDK Durable Task jsou přenosné opensourcové knihovny pro vytváření trvalých orchestrací, aktivit a entit pomocí běžného kódu. Pracují na libovolné výpočetní platformě – Azure Container Apps, Kubernetes nebo virtuálních počítačích. Každá sada SDK se připojí k plánovači trvalých úloh jako jeho spravovaný back-end.

Použijte Durable Task SDKs, když potřebujete:

  • Orchestrace vícekrokových pracovních postupů , které přežijí restartování procesů a selhání infrastruktury
  • Pracujte paralelně a spolehlivě agregujte výsledky.
  • Počkejte na externí události (schválení člověka, webhooky, časovače) bez využití výpočetních prostředků.
  • Spustit na libovolné výpočetní platformě bez vazby na Azure Functions.

Návod

Nejste si jistí, jestli použít sady SDK durable task nebo Durable Functions? Viz Volba architektury orchestrace. Širší přehled ekosystému Durable Task najdete v tématu Co je Durable Task?.

Dostupné sady SDK trvalých úloh

Následující tabulka shrnuje dostupné sady SDK Durable Task, jejich balíčky a informace o tom, kde najít zdrojový kód a ukázky.

Jazyk Balíčky Stav Zdroj Ukázky
.NET Microsoft.DurableTask.Worker.AzureManaged
Microsoft.DurableTask.Client.AzureManaged
GA durabletask-dotnet ukázky .NET
Python durabletask-azuremanaged GA durabletask-python Ukázky Pythonu
Java durabletask-client
durabletask-azure-managed
GA durabletask-java Ukázky Java
JavaScript / TypeScript @microsoft/durabletask-js
@microsoft/durabletask-js-azuremanaged
Náhled durabletask-js ukázky JS
Go github.com/microsoft/durabletask-go Beta durabletask-go Ukázky pro Go

Instalace

Každé SDK poskytuje worker pro spouštění orchestrací, aktivit a entit a klienta pro plánování a správu instancí. V závislosti na jazyce jsou tyto komponenty dodávány v samostatných balíčcích nebo v jednom balíčku či modulu. Nainstalujte balíčky uvedené pro váš jazyk.

dotnet add package Microsoft.DurableTask.Worker.AzureManaged
dotnet add package Microsoft.DurableTask.Client.AzureManaged

Sada .NET SDK funguje s libovolným modelem hostování .NET: ASP.NET Core, konzolových aplikací nebo pracovních služeb. Podporuje typově bezpečné definice orchestrace a aktivit pomocí zdrojových generátorů a integruje se s injekcí závislostí.

Začínáme

Všechny sady SDK se řídí stejným vzorem:

  1. Nainstalujte balíčky nebo modul SDK pro daný programovací jazyk. Viz Instalace.

  2. Spusťte emulátor pro místní vývoj pomocí Dockeru:

    docker run --name dtsemulator -d -p 8080:8080 -p 8082:8082 mcr.microsoft.com/dts/dts-emulator:latest
    
  3. Definujte orchestrace a aktivity v kódu aplikace.

  4. Spustit pracovníka pro zpracování položek úloh a aktivit.

  5. Pomocí klienta naplánujte nové instance orchestrace a zadejte dotaz na jejich stav.

Návod s pracovním kódem najdete v tématu Rychlý start: Vytvoření aplikace pomocí sad SDK Durable Task.

Porovnání funkcí

Následující tabulka uvádí funkce, které jednotlivé sady SDK podporují.

funkce platforma .NET Python Java JavaScript Go (beta)
Orchestrations ✅ ✅ ✅ ✅ ✅
Aktivity ✅ ✅ ✅ ✅ ✅
Dílčí orchestrace ✅ ✅ ✅ ✅ ✅
Trvalé časovače ✅ ✅ ✅ ✅ ✅
Externí události ✅ ✅ ✅ ✅ ✅
Odolné entity ✅ ✅ ✅ ✅ ✅
Zásady opakování pokusů ✅ ✅ ✅ ✅ ✅
Pokračovat jako nový ✅ ✅ ✅ ✅ ✅
Pozastavení nebo obnovení ✅ ✅ ✅ ✅ ✅

Další kroky