Lire en anglais

Partager via


Choisir les services d’intégration et d’automatisation appropriés dans Azure

Cet article compare les services de cloud computing Microsoft suivants :

Tous ces services peuvent résoudre des problèmes d’intégration et automatiser des processus métier. Ils peuvent tous définir des entrées, des actions, des conditions et des sorties. Vous pouvez exécuter chacun d’eux selon une planification ou à l’aide d’un déclencheur. Les services présentent des avantages qui leur sont propres. Cet article explique les différences entre eux.

Notes

Si vous recherchez une comparaison plus générale entre Azure Functions et d’autres options de calcul Azure, consultez les articles suivants :

Pour obtenir un résumé et une comparaison des options de service Automation dans Azure, consultez Choisir des services Automation dans Azure.

Comparer Azure Logic Apps et Microsoft Power Automate

Ces services sont tous deux des plateformes d’intégration design-first où vous pouvez créer et exécuter des workflows automatisés. Les deux plateformes s’intègrent à différentes applications SaaS (software as a service) et applications d’entreprise. Toutes deux fournissent des concepteurs de workflows similaires, et bien que certains de leurs connecteurs soient partagés, chaque plateforme offre également ses propres connecteurs uniques.

Power Automate permet aux utilisateurs professionnels, aux employés de bureau et aux développeurs citoyens de créer des intégrations simples sans avoir à travailler avec un service informatique ou des développeurs, ou à écrire du code. Un exemple peut être un workflow d’approbation pour une bibliothèque de documents SharePoint. Azure Logic Apps prend en charge les intégrations allant de scénarios sans code ou avec peu de code jusqu’à des workflows plus avancés, avec code et complexes. Les exemples incluent des processus ou scénarios B2B qui nécessitent des interactions au niveau de l’entreprise avec Azure DevOps. Un workflow métier peut également croître d’un workflow simple à un workflow complet au fil du temps.

Pour vous aider à déterminer si vous souhaitez utiliser Azure Logic Apps ou Power Automate pour une intégration spécifique, consultez le tableau de comparaison des fonctionnalités.

Comparer Azure Functions et Azure Logic Apps

Ces services Azure vous permettent de générer et d’exécuter des charges de travail serverless. Azure Functions est un service de calcul serverless, tandis qu’Azure Logic Apps est une plateforme d’intégration de workflow serverless. Les deux services peuvent créer des orchestrations complexes. Une orchestration est une collection de fonctions, appelées actions dans Azure Logic Apps, que vous pouvez exécuter pour accomplir une tâche complexe. Par exemple, pour traiter un lot de commandes, vous pourrez exécuter plusieurs instances d’une fonction en parallèle, attendre que toutes les instances se terminent, puis exécuter une fonction qui calcule un résultat de l’agrégat.

Pour Azure Functions, vous développez des orchestrations en écrivant du code et en utilisant l’extension Durable Functions. Pour Azure Logic Apps, vous créez des orchestrations à l’aide d’un concepteur visuel ou en modifiant des modèles Azure Resource Manager.

Vous pouvez mélanger et faire correspondre des services lorsque vous générez une orchestration. Par exemple, vous pouvez appeler des fonctions à partir de workflows d’application logique, et appeler des workflows d’application logique à partir de fonctions. Vous pouvez opter pour l’un ou l’autre des services pour créer chacune de vos orchestrations en fonction des capacités de ceux-ci ou de vos préférences. Le tableau suivant répertorie certaines des principales différences entre ces services :

Fonctions durables Azure Logic Apps
Développement Orienté code (impératif) Orienté concepteur (déclaratif)
Connectivité - Une douzaine de types de liaison intégrés
- Écrire du code pour des liaisons personnalisées
- Plus de 1 400 connecteurs prédéfinis avec des déclencheurs et des actions
- Enterprise Integration Pack pour les scénarios B2B
- Connecteurs personnalisés
Actions Chaque activité est une fonction Azure ; écriture de code pour les fonctions de l’activité Plus de 1 400 connecteurs prédéfinis avec des déclencheurs et des actions
Surveillance Azure Application Insights - Azure portal
- Journaux Azure Monitor
- Microsoft Defender pour le cloud
- Azure Application Insights pour les workflows Standard
- Contrôle d’intégrité pour les workflows Standard

Pour plus d’informations, consultez Superviser les workflows dans Azure Logic Apps.
Gestion - REST API
- Visual Studio
- Azure portal
- Visual Studio Code
- REST API
- PowerShell
- Azure CLI (workflows Standard)
- Azure CLI (workflows Consommation)
Contexte d’exécution Exécution possible en local ou dans le cloud Peut s’exécuter dans Azure, localement dans Visual Studio Code, ou dans des environnements partiellement connectés. Pour plus d’informations, consultez la page Présentation d’Azure Logic Apps.

Comparer Functions et WebJobs

Comme Azure Functions, Azure App Service WebJobs avec le Kit de développement logiciel (SDK) WebJobs est un service d’intégration orienté code conçu pour les développeurs. Les deux reposent sur Azure App Service et prennent en charge des fonctionnalités telles que l’intégration du contrôle de code source, l’authentification et la surveillance avec l’intégration Application Insights.

WebJobs et Kit de développement logiciel (SDK) WebJobs

Vous pouvez utiliser la fonctionnalité WebJobs d’App Service pour exécuter un script ou du code dans le contexte d’une application web App Service. Le Kit de développement logiciel (SDK) WebJobs est une infrastructure conçue pour les WebJobs qui simplifie le code que vous écrivez pour répondre aux événements dans les services Azure. Par exemple, vous pouvez répondre à la création d’un objet blob d’image dans Stockage Azure en créant une image miniature. Le Kit de développement logiciel (SDK) WebJobs s’exécute comme une application de console .NET, que vous pouvez déployer sur un WebJob.

Les WebJobs et le Kit de développement logiciel (SDK) WebJobs fonctionnent mieux ensemble, mais vous pouvez utiliser des WebJobs sans Kit de développement logiciel (SDK) WebJobs et vice versa. Un WebJob peut exécuter n’importe quel programme ou script s’exécutant dans le bac à sable App Service. Une application de console de Kit de développement logiciel (SDK) WebJobs peut s’exécuter là où les applications de console s’exécutent, tels que des serveurs locaux.

Tableau de comparaison

Azure Functions repose sur le Kit de développement logiciel (SDK) WebJobs, donc il partage beaucoup de déclencheurs d’événements et de connexions à d’autres services Azure. Voici quelques facteurs à prendre en compte quand vous devez choisir entre Azure Functions et WebJobs avec le SDK WebJobs :

1 WebJobs (sans le SDK WebJobs) prend en charge des langages tels que C#, Java, JavaScript, Bash, .cmd, .bat, PowerShell, PHP, TypeScript et Python, entre autres. Un WebJob peut exécuter n’importe quel programme ou script pouvant s’exécuter dans le bac à sable App Service.

2 WebJobs (sans le SDK WebJobs) prend en charge NPM et NuGet.

Résumé

Azure Functions apporte aux développeurs un gain de productivité supérieur par rapport à Azure App Service WebJobs. Il leur offre également davantage d’options pour les langages de programmation, les environnements de développement, l’intégration des services Azure et la tarification. Pour la plupart des scénarios, Azure Functions est le meilleur choix.

Voici deux scénarios pour lesquels WebJobs peut être le meilleur choix :

  • Vous avez besoin de davantage de contrôle sur le code qui écoute les événements, l’objet JobHost. Azure Functions offre un nombre limité de méthodes de personnalisation du comportement JobHost dans le fichier JobHost. Parfois, vous devez effectuer des opérations que vous ne pouvez pas spécifier à l’aide d’une chaîne dans un fichier JSON. Par exemple, seul le Kit de développement logiciel (SDK) WebJobs vous permet de configurer une stratégie de nouvelles tentatives personnalisée pour Stockage Azure.
  • Vous avez une application App Service pour laquelle vous souhaitez exécuter des extraits de code, et vous voulez les gérer ensemble dans le même environnement Azure DevOps.

Pour d’autres scénarios où vous souhaitez exécuter des extraits de code pour l’intégration de services Azure ou externes, préférez Azure Functions à WebJobs avec le Kit de développement logiciel (SDK) WebJobs.

Power Automate, Logic Apps, Functions et WebJobs ensemble

Vous n’êtes pas obligé de choisir un seul de ces services. Ils s'intègrent les uns aux autres et aux services externes.

Un flux Power Automate peut appeler un workflow Azure Logic Apps. Un workflow Azure Logic Apps peut appeler une fonction dans Azure Functions, et inversement. Par exemple, consultez Créer une fonction qui s’intègre avec Azure Logic Apps.

Entre Power Automate, Azure Logic Apps et Functions, l’expérience d’intégration entre ces services continue à s’améliorer au fil du temps. Vous pouvez créer un composant dans un service et utiliser ce composant dans les autres services.

Pour plus d’informations sur les services d’intégration, consultez les articles suivants :

Étapes suivantes

Commencez en créant votre premier flux, workflow d’application logique ou application de fonction. Sélectionnez l’un des liens suivants :