Uwaga
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.
W tym artykule porównano następujące usługi w chmurze firmy Microsoft:
- Microsoft Power Automate (dawniej Microsoft Flow)
- Azure Logic Apps
- Azure Functions
- Azure App Service WebJobs
Wszystkie te usługi umożliwiają rozwiązywanie problemów z integracją i automatyzację procesów biznesowych. Mogą one definiować dane wejściowe, akcje, warunki i dane wyjściowe. Każdą z nich można uruchomić zgodnie z harmonogramem lub za pomocą wyzwalacza. Każda usługa ma unikatowe zalety, a w tym artykule opisano różnice między nimi.
Uwaga
Jeśli szukasz bardziej ogólnego porównania między usługą Azure Functions i innymi opcjami obliczeniowymi platformy Azure, zobacz następujące artykuły:
- Kryteria wyboru usługi obliczeniowej platformy Azure
- Wybieranie opcji obliczeń platformy Azure dla mikrousług
Aby zapoznać się z podsumowaniem i porównaniem opcji usługi automatyzacji na platformie Azure, zobacz Wybieranie usług automatyzacji na platformie Azure.
Porównanie usług Azure Logic Apps i Microsoft Power Automate
Te platformy usługowe to platformy integracji skierowane na projektantów, na których można tworzyć i uruchamiać zautomatyzowane przepływy pracy. Obie platformy integrują się z różnymi aplikacjami typu oprogramowanie jako usługa (SaaS) i aplikacjami dla przedsiębiorstw. Oba zapewniają podobnych projektantów przepływów pracy, i chociaż ich łączniki częściowo się pokrywają, każda platforma oferuje również własne unikatowe łączniki.
Usługa Power Automate umożliwia użytkownikom biznesowym, pracownikom biurowym i deweloperom obywatelskim tworzenie prostych integracji bez konieczności pracy z it lub deweloperami ani pisania kodu. Przykładem może być przepływ pracy zatwierdzania dla biblioteki dokumentów programu SharePoint. Usługa Azure Logic Apps obsługuje integracje, począwszy od scenariuszy z małą ilością kodu do bardziej zaawansowanych, kodowych i złożonych przepływów pracy. Przykłady obejmują procesy lub scenariusze B2B, które wymagają interakcji na poziomie przedsiębiorstwa z usługą Azure DevOps. Przepływ pracy biznesowej może również z biegiem czasu ewoluować od prostego do skomplikowanego.
Aby ułatwić określenie, czy chcesz używać usługi Azure Logic Apps, czy Power Automate do określonej integracji, zobacz tabelę porównanie możliwości.
Porównanie usług Azure Functions i Azure Logic Apps
Te usługi platformy Azure umożliwiają tworzenie i uruchamianie obciążeń bezserwerowych. Azure Functions to bezserwerowa usługa obliczeniowa, a usługa Azure Logic Apps to bezserwerowa platforma integracji przepływu pracy. Obie umożliwiają tworzenie złożonych orkiestracji. Aranżacja to kolekcja funkcji, które są nazywane akcjami w usłudze Azure Logic Apps, które można uruchomić w celu wykonania złożonego zadania. Na przykład w celu przetworzenia partii zamówień możesz równolegle wykonać wiele wystąpień funkcji, poczekać na zakończenie wszystkich wystąpień, a następnie wykonać funkcję, która obliczy zagregowany wynik.
W przypadku usługi Azure Functions, organizację procesów tworzy się poprzez pisanie kodu i użycie rozszerzenia Durable Functions. W przypadku usługi Azure Logic Apps tworzysz aranżacje przy użyciu projektanta wizualnego lub edytując szablony usługi Azure Resource Manager.
Możesz mieszać i dopasowywać usługi podczas budowania orkiestracji. Można na przykład wywoływać funkcje z przepływów pracy aplikacji logiki i wywoływać przepływy pracy aplikacji logiki z funkcji. Wybierz sposób tworzenia poszczególnych aranżacji na podstawie możliwości usług lub własnych preferencji. W poniższej tabeli wymieniono niektóre kluczowe różnice między tymi usługami:
Porównanie usług Functions i WebJobs
Podobnie jak usługa Azure Functions, usługa Azure App Service WebJobs z zestawem SDK usługi WebJobs jest usługą integracji typu najpierw kod przeznaczoną dla deweloperów. Obie bazują na usłudze Azure App Service i obsługują funkcje, takie jak integracja kontroli kodu źródłowego, uwierzytelnianie i monitorowanie z integracją usługi Application Insights.
Usługa WebJobs i zestaw WebJobs SDK
Funkcja WebJobs usługi App Service umożliwia uruchamianie skryptu lub kodu w kontekście aplikacji internetowej usługi App Service. Zestaw SDK usługi WebJobs to struktura przeznaczona dla usługi WebJobs, która upraszcza kod pisany w celu reagowania na zdarzenia w usługach platformy Azure. Na przykład możesz zareagować na utworzenie obiektu blob obrazu w usłudze Azure Storage, tworząc obraz miniatury. Zestaw SDK usługi WebJobs działa jako aplikacja konsoli .NET, którą można wdrożyć w zadaniu WebJob.
Usługa WebJobs i zestaw SDK usługi WebJobs najlepiej działają razem, ale można używać usługi WebJobs bez zestawu SDK usługi WebJobs i na odwrót. Zadanie WebJob może uruchomić dowolny program lub skrypt działający w środowisku uruchomieniowym App Service. Aplikację konsolową zestawu SDK usługi WebJobs można uruchomić w każdym miejscu, w którym jest uruchomiona aplikacja konsolowa, np. na serwerach lokalnych.
Tabela porównawcza
Usługa Azure Functions bazuje na zestawie SDK usługi WebJobs, dlatego współużytkuje z innymi usługami platformy Azure liczne wyzwalacze i połączenia. Poniżej przedstawiono kilka czynników, które należy wziąć pod uwagę, wybierając między usługą Azure Functions a usługą WebJobs z zestawem WebJobs SDK:
Funkcje | WebJobs z SDK WebJobs | |
---|---|---|
Model aplikacji bez użycia serwera z automatycznym skalowaniem | ✔ | |
Programowanie i testowanie w przeglądarce | ✔ | |
Płatność za użycie | ✔ | |
Integracja z usługą Logic Apps | ✔ | |
Zdarzenia wyzwalające |
Czasomierz Kolejki i obiekty blob usługi Azure Storage Kolejki i tematy usługi Azure Service Bus Azure Cosmos DB Azure Event Hubs HTTP/WebHook (GitHub, Slack) Azure Event Grid |
Czasomierz Kolejki i obiekty blob usługi Azure Storage Kolejki i tematy usługi Azure Service Bus Azure Cosmos DB Azure Event Hubs System plików |
Obsługiwane języki | C# F# JavaScript Java Python PowerShell |
C#1 |
Menedżerowie pakietów | npm i NuGet | NuGet2 |
1 WebJobs (bez SDK dla WebJobs) obsługują takie języki, jak C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python i inne. Zadanie WebJob może uruchomić dowolny program lub skrypt, który można uruchomić w środowisku piaskownicy usługi Azure App Service.
2 zadania WebJobs (bez zestawu SDK WebJobs) obsługują npm i NuGet.
Podsumowanie
Usługa Azure Functions zapewnia większą efektywność pracy deweloperów niż usługa Azure App Service WebJobs. Udostępnia ona także więcej opcji dotyczących języków programowania, środowisk programistycznych, integracji usług platformy Azure i cen. W przypadku większości scenariuszy jest najlepszym wyborem.
Poniżej przedstawiono dwa scenariusze, w których WebJobs mogą być najlepszym wyborem.
- Potrzebujesz większej kontroli nad kodem nasłuchującym zdarzeń, obiektem
JobHost
. Usługa Functions oferuje ograniczoną liczbę sposobów dostosowywania zachowania obiektuJobHost
w pliku host.json. Czasami trzeba wykonać czynności, których nie można określić przy użyciu ciągu w pliku JSON. Na przykład tylko zestaw SDK usługi WebJobs pozwala skonfigurować niestandardowe zasady ponawiania dla usługi Azure Storage. - Masz aplikację usługi App Service, dla której chcesz uruchamiać fragmenty kodu, i chcesz zarządzać nimi razem w tym samym środowisku usługi Azure DevOps.
W przypadku innych scenariuszy, w których chcesz uruchamiać fragmenty kodu na potrzeby integracji usług platformy Azure lub usług zewnętrznych, wybierz Azure Functions zamiast zadań WebJob z zestawem SDK WebJobs.
Usługi Power Automate, Logic Apps, Functions i WebJobs razem
Nie trzeba wybierać tylko jednej z tych usług. Integrują się ze sobą i z usługami zewnętrznymi.
Przepływ Power Automate może wywoływać przepływ pracy Azure Logic Apps. Przepływ pracy usługi Azure Logic Apps może wywoływać funkcję w usłudze Azure Functions i odwrotnie. Na przykład zobacz Tworzenie funkcji zintegrowanej z usługą Azure Logic Apps.
Między usługami Power Automate, Azure Logic Apps i Functions doświadczenie integracyjne stale się poprawia. Składnik można utworzyć w jednej usłudze i użyć tego składnika w innych usługach.
Aby uzyskać więcej informacji na temat usług integracji, zobacz następujące artykuły:
- Korzystanie z usług Azure Functions i Azure App Service w scenariuszach integracji (autor: Christopher Anderson)
- Uproszczone integracje (autor: Charles Lamanna)
- Emisja internetowa usługi Azure Logic Apps Na żywo
- Często zadawane pytania dotyczące usługi Power Automate
Następne kroki
Rozpocznij od utworzenia pierwszego przepływu, przepływu pracy aplikacji logiki lub aplikacji funkcji. Wybierz dowolny z następujących linków: