Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel werden die folgenden Microsoft Cloud Services miteinander verglichen:
- Microsoft Power Automate (ehemals Microsoft Flow)
- Azure Logic Apps
- Azure-Funktionen
- WebJobs in Azure App Service
Mit allen diesen Diensten können Integrationsprobleme gelöst und Geschäftsprozesse automatisiert werden. Jeder der Dienste kann Eingaben, Aktionen, Bedingungen und Ausgaben definieren. Sie können die Dienste individuell nach einem Zeitplan oder auslöserbasiert ausführen. Jeder Dienst hat seine eigenen Vorteile. In diesem Artikel werden die Unterschiede beschrieben.
Hinweis
Einen allgemeineren Vergleich zwischen Azure Functions und anderen Azure Compute-Optionen finden Sie in den folgenden Artikeln:
- Kriterien für die Auswahl eines Azure-Computediensts
- Auswählen einer Azure-Computeoption für Microservices
Eine Zusammenfassung und einen Vergleich der Automatisierungsdienstoptionen in Azure finden Sie unter Auswählen der Automatisierungsdienste in Azure.
Vergleich von Azure Logic Apps und Microsoft Power Automate
Diese Dienste sind Integrationsplattformen nach dem Designer First-Prinzip, mit denen Sie automatisierte Workflows erstellen und ausführen können. Beide Plattformen bieten Integrationen mit verschiedenen SaaS- (Software-as-a-Service) und Unternehmensanwendungen. Beide stellen ähnliche Workflow-Designer bereit und auch bei ihren Connectors gibt es Überschneidungen, aber jede Plattform bietet auch eigene Connectors an.
Power Automate ermöglicht Geschäftsbenutzenden, Büromitarbeitenden und Personen, die privat programmieren, einfache Integrationen zu erstellen, ohne mit einer IT- oder Entwicklungsabteilung zusammenarbeiten oder Code schreiben zu müssen. Ein Beispiel ist ein Genehmigungsworkflow für eine SharePoint-Dokumentbibliothek. Azure Logic Apps unterstützt Integrationen in Szenarien mit wenig oder gar keinem Code bis hin zu komplexen Workflows mit viel Code. Beispiele sind B2B-Prozesse oder Szenarien, die Interaktionen auf Unternehmensebene mit Azure DevOps erfordern. Ein einfacher Geschäftsworkflow kann im Lauf der Zeit auch immer komplexer werden.
Wenn Sie wissen möchten, ob Sie für eine bestimmte Integration besser Azure Logic Apps oder Power Automate verwenden sollten, finden Sie in der Tabelle Funktionsvergleich.
Vergleich zwischen Azure Functions und Azure Logic Apps
Mit diesen Azure-Diensten können Sie serverlose Workloads erstellen und ausführen. Azure Functions ist ein serverloser Computedienst, während Azure Logic Apps eine serverlose Integrationsplattform für Workflows ist. Beide können komplexe Orchestrierungen erstellen. Eine Orchestrierung ist eine Sammlung von Funktionen, die in Azure Logic Apps als Aktionen bezeichnet werden und die Sie zur Durchführung einer komplexen Aufgabe ausführen können. Zur Verarbeitung einer Reihe von Aufträgen können Sie beispielsweise mehrere Instanzen einer Funktion parallel ausführen, auf die Beendigung aller Instanzen warten und anschließend eine Funktion ausführen, die ein Ergebnis für das Aggregat berechnet.
Für Azure Functions entwickeln Sie Orchestrierungen, indem Sie Code schreiben und die Erweiterung „Durable Functions“ verwenden. Für Azure Logic Apps erstellen Sie Orchestrierungen mithilfe eines visuellen Designers oder durch Bearbeiten von Azure Resource Manager-Vorlagen.
Beim Erstellen einer Orchestrierung können Sie Dienste beliebig kombinieren und aufeinander abstimmen. Sie können z. B. Funktionen aus Logik-App-Workflows und Logik-App-Workflows aus Funktionen aufrufen. Bei der Erstellung der jeweiligen Orchestrierung können Sie sich an den Funktionen der Dienste oder an Ihren persönlichen Präferenzen orientieren. Die folgende Tabelle enthält einige der wichtigsten Unterschiede zwischen diesen Diensten:
Vergleich von Functions und WebJobs
Wie bei Azure Functions auch, handelt es sich bei WebJobs in Azure App Service um einen Code-First-Integrationsdienst, der für Entwickler konzipiert ist. Beide Dienste basieren auf Azure App Service und unterstützen Features wie Integration der Quellcodeverwaltung, Authentifizierung und Überwachung per Application Insights-Integration.
WebJobs und das WebJobs SDK
Mit dem Feature WebJobs von App Service können Sie ein Skript oder Code im Kontext einer App Service-Web-App ausführen. Das WebJobs SDK ist ein für WebJobs entwickeltes Framework, mit dem der Code vereinfacht wird, den Sie als Reaktion auf Ereignisse in Azure-Diensten schreiben. Beispielsweise können Sie auf die Erstellung eines Bildblobs in Azure Storage mit der Erstellung eines Miniaturbilds reagieren. Das WebJobs SDK wird als .NET-Konsolenanwendung ausgeführt, die Sie in einem WebJob bereitstellen können.
WebJobs und das WebJobs SDK funktionieren am besten zusammen, aber Sie können auch WebJobs ohne das WebJobs SDK (und umgekehrt) verwenden. Ein WebJob kann ein beliebiges Programm oder Skript ausführen, das in der App Service-Sandbox ausgeführt wird. Eine WebJobs SDK-Konsolenanwendung kann überall dort ausgeführt werden, wo eine Konsolenanwendungen ausgeführt wird (beispielsweise auf lokalen Servern).
Vergleichstabelle
Azure Functions basiert auf dem WebJobs SDK und verfügt daher über viele gleiche Ereignisauslöser und Verbindungen mit anderen Azure-Diensten. Im Anschluss sind einige Faktoren aufgeführt, die Sie berücksichtigen sollten, wenn Sie sich zwischen Azure Functions und WebJobs mit dem WebJobs SDK entscheiden:
Functions | WebJobs mit WebJobs SDK | |
---|---|---|
Serverloses App-Modell mit automatischer Skalierung | ✔ | |
Entwicklung und Tests im Browser | ✔ | |
Nutzungsbasierte Bezahlung | ✔ | |
Integration in Logic Apps | ✔ | |
Auslösende Ereignisse |
Zeitgeber Azure Storage-Warteschlangen und -Blobs Azure Service Bus-Warteschlangen und -Themen Azure Cosmos DB Azure Event Hubs HTTP/WebHook (GitHub, Slack) Azure Event Grid |
Zeitgeber Azure Storage-Warteschlangen und -Blobs Azure Service Bus-Warteschlangen und -Themen Azure Cosmos DB Azure Event Hubs Dateisystem |
Unterstützte Sprachen | C# F# JavaScript Java Python PowerShell |
C#1 |
Paket-Manager | npm und NuGet | NuGet2 |
1 WebJobs (ohne das WebJobs SDK) unterstützt Sprachen wie C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript, Python und mehr. Ein WebJob kann ein beliebiges Programm oder Skript ausführen, für das die Ausführung in der App Service-Sandbox möglich ist.
2 Für WebJobs (ohne WebJobs SDK) werden npm und NuGet unterstützt.
Zusammenfassung
Azure Functions bietet im Vergleich zu WebJobs in Azure App Service eine höhere Entwicklerproduktivität. Darüber hinaus stehen mehr Optionen bei Programmiersprachen, Entwicklungsumgebungen, Azure-Dienstintegration und Preisen zur Verfügung. Für die meisten Szenarien ist dies die beste Wahl.
In den folgenden beiden Szenarien sind WebJobs möglicherweise die beste Wahl:
- Sie benötigen mehr Kontrolle über den Code, mit dem auf Ereignisse gelauscht wird (
JobHost
-Objekt). Functions verfügt über eine begrenzte Anzahl von Optionen zum Anpassen desJobHost
-Verhaltens in der DateiJobHost
. Manchmal müssen Sie Aufgaben ausführen, die Sie nicht mithilfe einer Zeichenfolge in einer JSON-Datei angeben können. Beispielsweise können Sie nur mit dem WebJobs SDK eine benutzerdefinierte Wiederholungsrichtlinie für Azure Storage konfigurieren. - Sie verfügen über eine App Service-App, für die Sie Codeausschnitte ausführen und diese gemeinsam in der gleichen Azure DevOps-Umgebung verwalten möchten.
Wählen Sie Azure Functions anstelle von WebJobs mit dem WebJobs SDK für andere Szenarien, in denen Sie Codeschnipsel für die Integration mit Azure-Diensten oder externen Diensten ausführen möchten.
Kombinieren von Power Automate, Logic Apps, Functions und WebJobs
Sie müssen sich nicht für einen dieser Dienste entscheiden. Sie lassen sich gut untereinander und in externe Dienste integrieren.
Ein Power Automate-Flow kann einen Azure Logic Apps-Workflow aufrufen. Ein Azure Logic Apps-Workflow kann eine Funktion in Azure Functions aufrufen und umgekehrt. Informationen hierzu finden Sie beispielsweise unter Erstellen einer Funktion, die in Azure Logic Apps integriert ist.
Die Integrationserfahrung zwischen den Diensten Power Automate, Azure Logic Apps und Functions wird weiterhin verbessert. Sie können eine Komponente in einem Dienst erstellen und diese Komponente dann in den anderen Diensten verwenden.
Weitere Informationen zu Integrationsdiensten finden Sie in den folgenden Artikeln:
- Leveraging Azure Functions & Azure App Service for integration scenarios (Nutzung von Azure Functions und Azure App Service für Integrationsszenarien) von Christopher Anderson
- Integrations Made Simple (Integrationen leicht gemacht) von Charles Lamanna
- Azure Logic Apps-Livewebcast
- Häufig gestellte Fragen
Nächste Schritte
Beginnen Sie, indem Sie Ihre ersten Flow, Logik-App-Workflow oder eine Funktions-App erstellen. Wählen Sie einen der folgenden Links aus: