Description de l'architecture principale

Aperçu

Cette section contient des détails sur l'architecture recommandée à utiliser lors du déploiement de WorkflowGen pour Docker. Le schéma suivant illustre tous les composants en action :

Comme vous pouvez le constater, tous les composants d'exécution se trouvent dans un ou plusieurs hôtes Docker. Vous pouvez utiliser autant de conteneurs d'applications Web que vous le souhaitez pour une disponibilité et des performances accrues, mais vous ne pouvez disposer que d'une seule instance de chaque service Windows WorkflowGen. Vous n'avez pas non plus à utiliser le conteneur de base de données, si vous le souhaitez, vous pouvez externaliser la base de données vers un fournisseur de cloud tel qu'Azure SQL ou votre propre SQL Server sur site.

Comme d'habitude, vous pouvez configurer le service SMTP que vous souhaitez utiliser avec le conteneur de WorkflowGen. Aucune configuration spéciale n'est requise pour cela.

Toutes les données persistantes sont externalisées. Les licences utilisées pour WorkflowGen, les données d'application (App_Data) et les applications de workflow (wfapps) sont toutes conservées dans un espace partagé distinct (wfgdata dans le diagramme). Par exemple, il peut s’agir d’un partage de fichiers, d’un service Azure Files, d'un disque Azure Disk ou de tout autre service capable d’agir en tant que répertoire sur un hôte Docker.

De plus, dans ce diagramme, les fichiers de base de données se trouvent dans un volume Docker. Ce volume doit être un disque, tel qu'un disque local sur l'hôte Docker dont vous pouvez contrôler les sauvegardes, ou quelque chose comme un disque Azure Disk pour que vous puissiez prendre des copies de sauvegarde. Dans le cas de la base de données, il est important d'avoir un disque pour maintenir de bonnes performances. Pour des résultats optimaux, vous devez externaliser la base de données. Consultez la page Options d'hébergement SQL Server pour plus de détails.

Services WorkflowGen

Cette section décrit chacun des environnements d'exécution du conteneur WorkflowGen. N'oubliez pas que tous les environnements sont regroupés dans une seule image.

Applications Web

Lorsque vous exécutez les applications Web du conteneur, les composants suivants sont en cours d'exécution :

  • Portail utilisateur

  • Module d'administration

  • Toutes les APIs :

    • GraphQL

    • SOAP

    • SCIM v2

    • Webhooks

    • Authentification OpenID Connect

  • Formulaires Web ASP.NET

  • Applications de workflow (assemblys .NET)

Ce sont tous les composants dont vous avez besoin pour faire fonctionner chaque service Web et interface graphique.

Services Windows

Lorsque vous exécutez les services Windows du conteneur, les composants suivants sont en cours d'exécution :

  • Service de la synchronisation des annuaires

  • Service du moteur

Stockage des fichiers

Ce sont des espaces partagés entre les conteneurs où se trouvent des données qui devraient être persistantes et qui ne peuvent pas être dans la base de données. Un espace partagé pour les licences WorkflowGen est requis car une licence ne peut pas être stockée directement dans une image. Au lieu de cela, il est récupéré au moment de l'exécution à partir du conteneur et placé à l'emplacement correct à l'intérieur du conteneur.

Le dossier WorkflowGen App_Data doit être partagé entre les conteneurs. Il contient les informations suivantes dont WorkflowGen a besoin pour fonctionner correctement :

  • Fichiers de processus au moment du design

  • Fichiers de processus d'exécution

  • Fichiers de log

  • Fichiers temporaries des applications de workflow

  • Menus personnalisés du portail utilisateur

  • Modèles de processus

  • Modèles d'email

L'application Web IIS de wfapps est également partagée entre les conteneurs car les formulaires Web contenus à cet emplacement sont des fichiers ASP.NET générés au moment de la conception. C'est pourquoi ils sont considérés comme un stockage. Les dossiers App_Data et wfapps sont regroupés dans le même espace partagé appelé wfgdata.

Conteneur de base de données et stockage

Dans cette architecture, la base de données WorkflowGen est conteneurisée et ses données sont stockées dans un espace partagé, de préférence également soutenu par un disque haute performance. Vous pouvez ajouter d'autres bases de données conteneurisées en tant que réplicas en lecture avec leur propre espace partagé pour leurs données. Pour plus de détails sur le conteneur de base de données ou la gestion de base de données avec des conteneurs, voir la section Options d'hébergement SQL Server.

Service SMTP

WorkflowGen s'appuie sur une passerelle SMTP pour envoyer des notifications par courrier électronique. Un serveur ou un service SMTP avec une latence réseau faible et une haute disponibilité est recommandé.

Dernière mise à jour