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:
Porównanie usług Azure Logic Apps i Microsoft Power Automate
Te usługi to platformy integracji oparte na projektancie, 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, a ich łączniki współdzielą pewne nakładające się na siebie, 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ż rosnąć od prostego do kompletnego w czasie.
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 tworzenie aranżacji odbywa się przez pisanie kodu i używanie rozszerzenia funkcji trwałych. W przypadku usługi Azure Logic Apps tworzysz aranżacje przy użyciu projektanta wizualnego lub edytując szablony usługi Azure Resource Manager.
Usługi można mieszać i dopasowywać podczas tworzenia aranżacji. 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:
Można uruchamiać na platformie Azure, lokalnie w programie Visual Studio Code lub w częściowo połączonych środowiskach. Aby uzyskać więcej informacji, zobacz Co to jest usługa Azure Logic Apps?
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 piaskownicy usługi 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:
1 zadania WebJob (bez zestawu SDK usługi WebJobs) obsługują języki, takie jak C#, 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 piaskownicy usługi App Service.
2 zadania WebJob (bez zestawu SDK usługi WebJobs) obsługują narzędzia 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, dla których zadania WebJob 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 obiektu JobHost 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 pozycję Azure Functions za pośrednictwem zadań WebJob z zestawem SDK zadań WebJob.
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 usługi Power Automate może wywoływać przepływ pracy usługi Azure Logic Apps. Przepływ pracy usługi Azure Logic Apps może wywoływać funkcję w usłudze Azure Functions i na odwrót. Na przykład zobacz Tworzenie funkcji zintegrowanej z usługą Azure Logic Apps.
Między usługami Power Automate, Azure Logic Apps i Functions środowisko integracji między tymi usługami stale się poprawia w miarę upływu czasu. 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:
Dołącz do serii meetup, aby tworzyć skalowalne rozwiązania sztucznej inteligencji oparte na rzeczywistych przypadkach użycia z innymi deweloperami i ekspertami.
Ta ścieżka szkoleniowa zawiera wprowadzenie do usługi Azure Logic Apps i sposobu automatyzowania procesów biznesowych przez kompilowanie i uruchamianie przepływów pracy integracji w chmurze platformy Azure.
Tworzenie funkcji zintegrowanej z usługami Azure Logic Apps i Azure AI. Wynikowy przepływ pracy kategoryzuje tonacje tweetu, wysyła powiadomienia e-mail.
Identyfikowanie kluczowych scenariuszy korzystających z usługi Azure Functions w celu zapewnienia bezserwerowych zasobów obliczeniowych w topologii opartej na chmurze platformy Azure.
Azure Functions to zarządzany dostawca typu "platforma jako usługa" (PaaS), który udostępnia zasoby obliczeniowe oparte na zdarzeniach i zaplanowane dla usług w chmurze platformy Azure. Możesz skoncentrować się na kodzie, który jest najważniejszy dla Ciebie i usługa Functions zajmuje się resztą. Funkcje mogą zapewnić skalowalne i bezserwerowe hostowanie projektów kodu napisanych w najbardziej wydajnym języku. Za pomocą usługi Functions można tworzyć internetowe interfejsy API, reagować na zmiany bazy danych
Zawiera omówienie sposobu łączenia funkcji z innymi usługami obsługi komunikatów i opartymi na zdarzeniach na platformie Azure, takimi jak Azure Service Bus, Azure Event Grid i Azure Event Hubs.