Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Termin przepływ pracy często ma wiele znaczenia. W kontekście Durable Functions przepływy pracy mogą być nazywane orkiestracjami. Aby uniknąć pomyłek z orkiestracją kontenerów, w tym artykule używany jest zamiast tego termin przepływ pracy.
Przepływ pracy to wieloetapowa operacja, która zwykle występuje w określonej kolejności lub obejmuje długotrwałe zadania. Rzeczywiste scenariusze wymagające przepływów pracy obejmują:
- Przetwarzanie zamówień
- Orkiestracja agentów sztucznej inteligencji
- Zarządzanie infrastrukturą
- Potoki przetwarzania danych
Zdarzenia takie jak tymczasowe awarie infrastruktury lub przestoje zależności mogą często przerywać wykonywanie przepływu pracy. Aby zapobiec przerwom, można użyć trwałego wykonywania, które jest kontynuowane z punktu awarii zamiast ponownego uruchamiania.
Trwałe wykonywanie
Trwałe wykonanie zapewnia odporność na błędy przy uruchamianiu kodu i skutecznie obsługuje awarie dzięki automatycznemu ponawianiu prób i trwałości stanu. Trwałe wykonywanie jest oparte na trzech podstawowych zasadach:
- Wykonywanie przyrostowe: Każda operacja jest wykonywana niezależnie i w kolejności.
- Trwałość stanu: Dane wyjściowe każdego kroku są zapisywane w celu zapewnienia, że postęp nie zostanie utracony.
- Odporność na uszkodzenia: Jeśli krok zakończy się niepowodzeniem, operacja zostanie ponowiona z ostatniego pomyślnego kroku, pomijając wcześniej wykonane kroki.
Trwałe wykonywanie przynosi korzyści scenariuszom, które wymagają stanowego łańcuchowania operacji. Upraszcza implementację złożonych, długotrwałych, stanowych i odpornych na błędy wzorców aplikacji.
Trwałe wykonywanie w workflowach w Azure Container Apps można osiągnąć przy użyciu jednej z zarządzanych przez Azure struktur przepływu pracy.
Struktury przepływu pracy dla deweloperów w Azure
Azure udostępnia dwie struktury przepływu pracy zorientowane na kod, których można użyć do tworzenia aplikacji uruchamianych na Azure Container Apps:
- Trwałe zestawy SDK dla zadań
- Durable Functions
Te struktury są przeznaczone dla deweloperów i są dostępne w wielu językach programowania.
Trwałe zestawy SDK dla zadań
Zestawy SDK Durable Task to lekkie klienckie SDK-i, które zapewniają neutralny model programowania do tworzenia przepływów pracy. W przeciwieństwie do Durable Functions, który jest ściśle powiązany z obliczeniami usługi Functions, te przenośne zestawy SDK są oddzielone od wszystkich obliczeń. Umożliwiają one aplikacji połączenie z silnikiem przepływu pracy hostowanym w Azure o nazwie Durable Task Scheduler.
Aby zapewnić trwałe wykonywanie, zestawy SDK zadań trwałych wymagają backendu magazynowania w celu zapisywania stanu przepływu pracy w czasie działania aplikacji. Backend Durable Task Scheduler stale zapisuje stan przepływu pracy w czasie działania aplikacji i automatycznie przeprowadza próby ponownego wykonania w celu zapewnienia trwałego wykonania. Harmonogram jest odpowiedzialny za:
- Planuje wykonywanie zadań przepływu pracy i zarządza nimi.
- Przechowuje i utrzymuje stan przepływu pracy.
- Obsługuje utrzymywanie danych, błędy oraz ponowne próby.
- Równoważenie obciążenia umożliwia wykonywanie orkiestracji na dużą skalę w aplikacji kontenerowej.
Uwaga / Notatka
Obecnie zestawy SDK Durable Task dla Pythona i Javy są dostępne w wersji zapoznawczej. Dowiedz się, która struktura jest zalecana do użytku produkcyjnego.
Szybki start
Spróbuj skonfigurować zestawy SDK Durable Task dla swojej aplikacji kontenerowej, korzystając z poniższych przewodników szybkiego startu.
| Szybki start | Opis |
|---|---|
| Tworzenie aplikacji z trwałymi zestawami SDK zadań i trwałym harmonogramem zadań | Dowiedz się, jak tworzyć przepływy pracy korzystające ze wzorca aplikacji Durable Functions „fan-out/fan-in”. Obecnie dostępne w zestawach SDK .NET, Python i Java Durable Task. |
| Hostowanie aplikacji Durable Task SDK w Azure Container Apps | Użyj interfejsu wiersza polecenia dewelopera Azure, aby utworzyć zasoby usługi Durable Task Scheduler i wdrożyć je w Azure z dwoma aplikacjami kontenera z uruchomionymi zadaniami przepływu pracy. Obecnie dostępne w zestawach SDK .NET, Python i Java Durable Task. |
Durable Functions
Jako funkcja Azure Functions, Durable Functions dziedziczy wiele jej cech jako platformy przepływu pracy zorientowanej na kod w Azure. Na przykład w przypadku Durable Functions możesz skorzystać z następujących korzyści:
- Integracje z innymi usługami Azure za pośrednictwem Azure Functions wyzwalaczy i powiązań
- Lokalne doświadczenie rozwoju
- Model cen bezserwerowy
Jak wybrać
Aplikacje utworzone przy użyciu zestawów SDK rozszerzenia Durable Task lub Durable Functions mogą być hostowane w Azure Container Apps. Dowiedz się, która struktura działa najlepiej w twoim scenariuszu.