DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»Uncategorized»Création d’applications hautement fiables dans Mule 4
    Uncategorized

    Création d’applications hautement fiables dans Mule 4

    février 7, 2023
    Création d'applications hautement fiables dans Mule 4
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Dans ce blog, je voudrais partager quelques Meilleures pratiques pour créer des applications hautement fiables dans Mule 4.

    La fiabilité aspire à n’avoir aucun message ou perte de données après l’arrêt ou le plantage d’une application Mule.

    La plupart des détails de configuration (pertinents pour la fiabilité) partagés ici sont tirés de MuleSoft Documentation/Articles.


    1. Traitement asynchrone — Utiliser des files d’attente de VM persistantes | Utiliser Anypoint MQ | Utiliser l’agent de messages externe (basé sur JMS)

    Utiliser des files d’attente de VM persistantes

    Les files d’attente persistantes sont plus lentes mais fiables.

    Lors de l’exécution d’une application Mule en mode d’instance d’exécution unique, les files d’attente persistantes fonctionnent en sérialisant et en stockant le contenu sur le disque. Cependant, lors de l’exécution de l’application Mule en mode instance d’exécution du cluster, les files d’attente persistantes sont sauvegardées dans la grille mémoire. En mode d’instance d’exécution unique ou en cluster, lors de l’utilisation de files d’attente persistantes, les données que vous envoyez doivent être sérialisables.

    Les applications déployées CloudHub (1.0) ont la possibilité d’utiliser Files d’attente persistantes CloudHub. CloudHub Persistent Queues est un service cloud qui permet aux messages publiés dans les files d’attente de VM d’être stockés en externe à l’application.

    Comment activer les files d’attente persistantes CloudHub

    Les files d’attente CloudHub Persistent peuvent être activées pour chaque application, et l’option se trouve dans Gestionnaire d’exécution → Application → Paramètres page. Si votre organisation en a le droit, vous pouvez également choisir de chiffrer les files d’attente persistantes pour plus de sécurité. Cette fonctionnalité n’est disponible que pour les clients qui ont des abonnements Platinum et supérieurs.

    Les files d'attente persistent

    Utiliser Anypoint MQ

    MQ Anypoint est un service de messagerie cloud mutualisé qui permet aux clients d’effectuer des scénarios de messagerie asynchrone avancés entre leurs applications. Anypoint MQ est entièrement intégré à Anypoint Platform, offrant un contrôle d’accès basé sur les rôles, une gestion des clients et des connecteurs.

    Anypoint MQ garantit une livraison sécurisée et fiable des messages.

    Active automatiquement le stockage persistant des données sur plusieurs centres de données pour garantir que votre architecture de file d’attente de messages peut gérer les pannes du centre de données et dispose d’une reprise après sinistre complète. Crypte les files d’attente de messages pour sécuriser les données au repos ou envoie des messages aux files d’attente de lettres mortes pour une fiabilité accrue.

    Comment utiliser Anypoint MQ

    Installer et configurer Anypoint MQ

    • Connectez-vous à Anypoint Platform à l’aide de vos informations d’identification Enterprise Mule, puis cliquez sur QM.
    • Cliquez sur Gestion des accèsalors Utilisateurs ou Les rôles pour créer un utilisateur ou un rôle Anypoint MQ.
    • Depuis QMcréer une file d’attente, un échange de messages ou une file d’attente FIFO.
    • Cliquez sur le nom d’une file d’attente ou d’un échange de messages dans les détails pour accéder à l’expéditeur du message afin d’envoyer des messages à une file d’attente ou à un échange de messages, et pour utiliser le navigateur de messages pour obtenir des messages d’une file d’attente.
    • Depuis QMCliquez sur Applications clientes pour enregistrer une application. Vous pouvez afficher l’ID de l’application cliente et la clé secrète client de l’application.

    Dans Anypoint Studio

    • Installez le Connecteur Anypoint MQ en utilisant Anypoint Exchange.
    • Créez un nouveau projet Mule avec les blocs de construction nécessaires, tels qu’un connecteur HTTP, un connecteur Anypoint MQ, Set Payload et un enregistreur.
    • Configurez le connecteur Anypoint MQ et fournissez l’ID d’application client et le secret client de l’application.
    • Définissez l’opération du connecteur Anypoint MQ pour publier ou consommer des messages, ou pour accepter (ACK) ou ne pas accepter (NACK) un message.
    • Exécutez l’application Mule.

    Utiliser l’agent de messages externe (basé sur JMS)

    Connecteur Anypoint pour JMS (Service de messagerie Java) (Connecteur JMS) permet d’envoyer et de recevoir des messages vers des files d’attente et des rubriques pour tout service de messagerie qui implémente la spécification JMS.

    Comment configurer le connecteur JMS

    Configurer une source

    Vous pouvez configurer l’une de ces 3 sources d’entrée à utiliser avec JMS Connector :

    1. JMS > Sur nouveau message — Initie un flux en écoutant les messages entrants
    2. HTTP > Écouteur — Initie un flux chaque fois qu’il reçoit une demande sur l’hôte et le port configurés
    3. Planificateur — Initie un flux lorsqu’une condition basée sur le temps est remplie

    Pour configurer un Sur nouveau message source, suivez ces étapes :

    • Dans le Palette Mule voir, sélectionner JMS > Sur nouveau message.
    • Glisser Sur nouveau message au canevas Studio.
    • Dans le Sur nouveau message l’écran de configuration, modifiez éventuellement la valeur du Afficher un nom champ.
    • Cliquez sur le signe plus (+) à côté de la Configuration du connecteur pour configurer un élément global pouvant être utilisé par toutes les instances de la source dans l’application.
    • Dans le Configuration JMS fenêtre, pour Connexionsélectionnez l’un des types de connexion à fournir à cette configuration :
      • Connexion MQ active
      • Connexion MQ active – Pas de test de connectivité — (OBSOLÈTE)
      • Connexion générique
    • Sur le Général spécifiez les informations de connexion pour le connecteur, telles que les bibliothèques requises pour le courtier, la spécification JMS, la stratégie de cache, l’authentification et la fabrique de connexions.
    • Sur le TLS/SSL spécifiez éventuellement une configuration TLS.
    • Sur le Avancé spécifiez éventuellement une stratégie de reconnexion et un pool de connexions XA.
    • Cliquez sur D’ACCORD pour fermer la fenêtre.
    • Dans le Sur nouveau message écran de configuration, dans Destinationspécifiez le nom de la destination à partir de laquelle consommer le message.
    • Configurez d’autres champs facultatifs dans le Sur nouveau message écran de paramétrage.

    Ajouter une opération de connecteur

    Pour ajouter une opération pour JMS Connector, procédez comme suit :

    • Dans le Palette Mule voir, sélectionner Connecteur JMS puis sélectionnez l’opération souhaitée.
    • Faites glisser l’opération sur le canevas Studio et à droite de la source d’entrée.

    2. Gestion des états — Utiliser le magasin d’objets persistant | Utiliser des files d’attente de VM persistantes | Utiliser le stockage externe (DB, FTP, etc.)

    Utiliser le magasin d’objets persistant

    Le magasin d’objets est un conteneur de stockage qui stocke des informations sur les valeurs-clés. Le magasin d’objets peut être persistant ou transitoire (non persistante).

    Le système d’exploitation persistant ne perdra aucune information (valeur-clé) en cas de redémarrage de l’application où des informations non persistantes (valeur-clé) sont perdues.

    Comment utiliser/activer le magasin d’objets persistant

    Utiliser le magasin d’objets par défaut

    Par défaut, chaque application Mule possède un magasin d’objets persistant et toujours disponible pour l’application. sans aucune configuration. Les flux peuvent l’utiliser pour conserver et partager des données.

    Si vous souhaitez utiliser le magasin d’objets par défaut, vous pouvez spécifier un key pour le magasin d’objets sans sélectionner ni créer de référence de magasin d’objets pour l’opération de magasin d’objets et sans spécifier de objectStore dans l’élément XML du composant Object Store.

    L’application Mule est déployée sur CloudHub travailleurs utilisant Runtime Manager, mais le contenu du magasin d’objets par défaut n’est pas visible dans Runtime Manager dans le Application Data page de l’application.

    Utiliser un magasin d’objets personnalisé

    Les magasins d’objets personnalisés doivent spécifier un objectStore attribut. Ces magasins d’objets peuvent être configurés pour se comporter différemment du magasin d’objets par défaut. Par exemple, vous pouvez indiquer si le magasin d’objets est persistant (afin que les données du magasin d’objets survivent à un plantage de Mule Runtime) ou transitoire (lorsque les données ne survivent pas à un plantage de Mule Runtime).

    Magasin d'objets

    Utiliser la passerelle persistante

    Anypoint Runtime Fabric fournit Passerelle de persistance.

    Activez les applications Mule déployées sur une instance d’exécution Mule pour stocker et partager des données entre les répliques d’application et les redémarrages, garantissant ainsi la fiabilité.

    Une fois Persistence Gateway configuré dans Anypoint Runtime Fabric, il est disponible pour les applications Mule déployées sur le moteur d’exécution Mule, version 4.2.1 ou ultérieure. Une fois configuré, les utilisateurs peuvent sélectionner Utiliser le stockage d’objets persistants lors du déploiement d’une application à l’aide de Runtime Manager.

    Les applications Mule utilisent l’API REST Object Store v2 via le connecteur Object Store pour se connecter à Persistence Gateway. Cela vous permet de déployer à la fois Anypoint Runtime Fabric et CloudHub sans avoir à modifier votre application Mule.

    Comment configurer la passerelle de persistance

    Lors de la configuration, Persistence Gateway crée le schéma de base de données requis. Ensuite, lorsqu’une application déployée sur Runtime Fabric est configurée pour utiliser le stockage d’objets persistants, la passerelle de persistance écrit les lignes nécessaires dans la base de données.

    Pour configurer Persistence Gateway, vous devez créer une ressource personnalisée Kubernetes qui permet au cluster de se connecter à votre magasin de données de persistance.

    Créer un secret Kubernetes

    kubectl create secret generic <SECRET NAME> -n rtf --from-literal=persistence-gateway-creds="postgres://username:pass@host:port/databasename"

    Créer une ressource personnalisée pour votre magasin de données

    1. Copiez le modèle de ressource personnalisé du modèle de ressource personnalisé Kubernetes dans un fichier appelé custom-resource.yaml.
    2. Assurer la valeur de secretRef: name correspond à la name champ défini dans votre fichier secret Kubernetes.
    3. Modifiez les autres champs du modèle de ressource personnalisé selon les besoins de votre environnement.
    4. Courir kubectl apply -f custom-resource.yaml.

    Vérifiez les journaux du pod Persistence Gateway pour vous assurer qu’il peut communiquer avec la base de données

    Recherchez les gousses Wavec le Npréfixe ame persistence-gateway

    kubectl logs -f persistence-gateway-6dfb98949c-7xns9 -nrtf

    Utiliser des files d’attente de VM persistantes

    Reportez-vous à celui ci-dessus sous ‘Traitement asynchrone‘.

    Utiliser le stockage externe

    Une autre option consiste à conserver vos données dans des systèmes de stockage externes tels que BD, FTP, Cache externeetc. Les applications Mule peuvent utiliser des connecteurs pour se connecter à ces systèmes.

    Différents magasins externes proposent divers Qualité de service (QoS) niveaux, donc assurer la fiabilité:

    • Persistance
    • Transactionnel
    • Réplication
    • Politiques d’expulsion (moins fréquemment utilisées)
    • Haute disponibilité via cluster
    • Récupération plus rapide des données via le partitionnement
    • Basculement automatique

    3. Stratégie de reconnexion

    Lorsqu’une opération dans une application Mule ne parvient pas à se connecter à un serveur externe, le comportement par défaut est que l’opération échoue immédiatement et renvoie une erreur de connectivité.

    Afin d’assurer l’absence de perte de données, vous pouvez modifier ce comportement par défaut en configurant une stratégie de reconnexion pour l’opération.

    La stratégie de reconnexion est l’un des moyens d’atteindre les objectifs de fiabilité.

    Comment configurer la stratégie de reconnexion

    Vous pouvez configurer une stratégie de reconnexion pour une opération soit en modifiant les propriétés de l’opération, soit en modifiant le…

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.