Distributed Message Service (DMS)

Flexible Engine / Network

Service de mise en file d'attente de messages fiable et évolutif, entièrement hébergé sur la plate-forme informatique sur le cloud.

Grâce à l’utilisation de la technologie des grappes distribuées, le DMS permet un accès à grande échelle et à haute fréquence. Ce service découple les composants d’une application en nuage, ce qui permet de réaliser des économies substantielles.

Le DMS fournit une console web facile à utiliser pour gérer les files d’attente de messages et des interfaces de programmation d’applications (API) pour accéder aux messages. Grâce à la console DMS, les locataires peuvent rapidement créer des files d’attente et effectuer des tests de production et de consommation de messages. Les applications des utilisateurs peuvent ensuite appeler directement les API RESTful, ce qui rend le service DMS immédiatement disponible pour les applications.
Un système complet de surveillance et de maintenance a été lancé pour garantir un fonctionnement fiable du DMS.

La figure suivante montre l’architecture du DMS. Les locataires ont le choix d’accéder à un groupe de services de messagerie, soit en utilisant la console DMS pour fonctionner sur le site web, soit en demandant au système commercial d’effectuer des appels API au groupe de services de messagerie. Tous les messages stockés dans la zone de messagerie isolée sont protégés contre tout accès non autorisé.

Description

Caractéristiques du DMS :

  • Partage entre plusieurs locataires

En tant que service « natif du nuage », le DMS est directement disponible pour une utilisation sans déploiement de matériel ou de logiciel.

  • Gestion de la file d’attente des messages

Le DMS fournit une console web aux locataires, leur permettant de gérer les files d’attente de messages.

  • Type de file d’attente multiple

Supporte la file d’attente standard, la file d’attente FIFO. La file d’attente FIFO fait partie de la file d’attente stricte de préservation de l’ordre des messages.

  • API simples

Le DMS fournit des API RESTful simples pour accéder aux messages dans la file d’attente standard et la file d’attente FIFO.

  • Contrôle d’accès de haute sécurité

En s’intégrant au système IAM, le DMS fournit une authentification d’accès unifié basée sur des certificats, permettant uniquement aux locataires autorisés d’accéder aux files d’attente de messages appropriées. Le mécanisme de sécurité du DMS détermine les droits des locataires par défaut, les locataires ne peuvent accéder et exploiter que leur propre file d’attente créée

  • Stockage de haute fiabilité

Grâce à des mécanismes fiables intégrés, le DMS stocke les messages en file d’attente dans différents fichiers de segments, y compris l’attribut du message et le contenu du corps. Chaque message a trois copies dans le stockage DMS. Il prend également en charge la tolérance aux pannes, la découverte des pannes et la migration des données en ligne.

  • Vérification des erreurs

Le DMS dispose d’un mécanisme de traitement optimisé intégré pour assurer une consommation fiable et correcte des messages.

  • Une grande évolutivité

Les nœuds du DMS sont déployés sur des clusters distribués, ce qui le rend très évolutif.

  • Cloud Eye Service(CES)

Le CES, intégré au DMS, surveille l’utilisation des files d’attente de messages. Il signale une alarme si le CES détecte qu’un trop grand nombre de messages est en attente de traitement.

Bénéfices

Le CS présente les avantages suivants :

  • Facile à utiliser

Après avoir acheté le service DMS, vous pouvez utiliser DMS pour créer des files d’attente, et envoyer et recevoir des messages via la console web en utilisant seulement trois API.

  • Haute sécurité

Avec le système de gestion des identités et des accès (IAM) intégré, le SGD fournit un mécanisme d’authentification de l’identité. Ce mécanisme empêche les utilisateurs non autorisés d’accéder aux messages en file d’attente, ce qui assure une protection rigoureuse des messages.

  • Prise en charge des files d’attente massives

Le nombre de files d’attente prises en charge par le DMS est modulable, ce qui permet de répondre aux exigences toujours croissantes en matière de files d’attente de messages.

Un accès flexible
Le DMS prend en charge l’accès à l’intérieur du nuage, ce qui le rend applicable à divers scénarios de service.

  • Haute fiabilité

Les technologies utilisées par le DMS ont atteint un stade de maturité et ont été largement utilisées dans les systèmes de services en nuage des clients de niveau opérateur dans le monde entier, garantissant un fonctionnement fiable et permanent du service DMS.

  • Modes de communication multiples

Le DMS prend en charge les modes de communication point à point (P2P) et d’abonnement/publication, répondant aux exigences de services diversifiés.

  • Exploitation et maintenance transparentes (O&M)

L’ensemble du processus d’O&M du DMS est transparent pour les utilisateurs sans affecter leur expérience.

Cas d'usage

Le DMS peut être appliqué dans une grande variété de scénarios de service, y compris, mais sans s’y limiter :
  • Découplage des services
  • Cohérence inter-systèmes éventuelle
  • Contrôle du trafic en heures creuses
  • Synchronisation des journaux
  • Communication du système
Découplage des services
  • Scénario : système de commerce électronique
  • Description : Dans un système de commerce électronique, le DMS peut être utilisé pour fournir des notifications de messages pour des services sans importance qui dépendent d’autres systèmes. Cela permet aux services clés de continuer à fonctionner sans attendre les autres systèmes, en les découplant des services non importants. Par exemple, le système de traitement des commandes (OP) place les informations relatives aux commandes dans les files d’attente de messages du DMS, puis les systèmes de gestion des stocks et des livraisons lisent les informations relatives aux commandes dans les files d’attente de messages.
Cohérence éventuelle entre les systèmes
  • Scénario : système de commerce ou de paiement
  • Description : Dans un système de commerce ou de paiement, le statut de la transaction (transaction réussie ou échouée) doit être le même dans les différents sous-systèmes/modules. Par conséquent, des canaux de transmission de messages fiables (sans perte de données) sont nécessaires entre les sous-systèmes/modules pour assurer la continuité du service. Le DMS peut assurer une transmission de données très fiable entre les sous-systèmes/modules, en maintenant la synchronisation des statuts des transactions entre eux de manière simple et économique.
Contrôle de la circulation en période creuse
  • Scénario : système de commerce électronique ou grand site web
  • Description : Dans un système de commerce électronique ou un grand site web, il existe un écart de capacité entre les systèmes en amont et en aval. Les rafales de trafic des systèmes en amont ayant une capacité de traitement élevée peuvent avoir un impact énorme sur les systèmes en aval ayant une capacité de traitement plus faible. Par exemple, les promotions de vente en ligne impliquent un énorme afflux de trafic dans les systèmes de commerce électronique. Le DMS peut être utilisé pour mettre en mémoire tampon les informations relatives aux commandes, ce qui soulage la pression sur les systèmes en aval. Il fournit un tampon de 3 jours pour des centaines de millions de messages, permettant aux systèmes de consommateurs de messages de traiter les messages pendant les périodes creuses.
Synchronisation des journaux
  • Scénario : système d’analyse des logs
  • Description : Un système d’analyse des journaux doit collecter, traiter et analyser les journaux. Pour un tel système d’analyse des journaux, les applications envoient des messages de journaux au DMS par des canaux de transmission asynchrones fiables. Ensuite, d’autres composants peuvent lire les messages des journaux à partir des files d’attente de messages pour une analyse plus approfondie, soit en temps réel, soit hors ligne. En outre, le DMS peut être utilisé pour collecter les informations clés des journaux nécessaires à la surveillance.
Communication du système
  • Scénario : Système nécessitant des échanges de messages
  • Description : Les services imposent des exigences différentes en matière de communication entre les systèmes. Il s’agit notamment du mode de communication en file d’attente entre deux systèmes et du mode de communication par publication/abonnement entre plusieurs systèmes. Le DMS peut être utilisé pour réaliser la communication de messages P2P entre deux systèmes et pour publier/abonner la communication de messages entre plusieurs systèmes. Un système publie des messages, tandis que d’autres systèmes peuvent s’abonner et consommer le même message.
Suggestion d’utilisation
  • Suivre les suggestions fournies peut aider les locataires à utiliser le service DMS de manière plus efficace et raisonnable, c’est-à-dire une description complémentaire de la section précédente, afin de fournir les meilleures pratiques d’utilisation du DMS.
Conseils pour l’utilisation du service DMS Avant que les messages ne soient traités, le DMS permet de les stocker dans des files d’attente. Les utilisateurs n’ont pas à se soucier du stockage ou de la gestion des messages. Il leur suffit de se concentrer sur le développement d’applications. Les utilisateurs peuvent utiliser le DMS dans leurs applications par le biais des méthodes suivantes :
  • Intégrer le DMS aux services web d’autres infrastructures d’entreprise en nuage, en rendant les applications plus fiables, plus flexibles et plus évolutives.
  • Utiliser le DMS pour créer une file d’attente. Dans cette file d’attente, chaque message est considéré comme une tâche et un processus est nécessaire pour mener à bien ces tâches. Un ou plusieurs processus peuvent lire et exécuter des tâches dans la file d’attente.
  • Connecter les files d’attente de messages aux micro-services pour construire l’architecture des micro-services.
  • Stockage des notifications d’événements importants des services dans les files d’attente de messages DMS. Chaque événement a un message correspondant dans la file d’attente, et les applications qui ont besoin de connaître les informations sur l’événement peuvent lire et traiter le message.
Lors de l’utilisation du DMS, les utilisateurs peuvent prendre certaines mesures d’optimisation pour améliorer l’efficacité des appels API, ainsi que l’efficacité de l’envoi et de la consommation des messages. Pour améliorer l’efficacité de l’envoi et de la consommation des messages, il est conseillé aux utilisateurs d’utiliser le mode d’envoi et de consommation des messages par lots, qui peut effectivement réduire le nombre d’appels API et minimiser les frais de service.

Bonnes pratiques

Lors de l’envoi et de la consommation des messages, le service DMS, les producteurs et les consommateurs collaborent pour assurer la fiabilité du service. Les meilleures pratiques pour les producteurs et les consommateurs de DMS sont les suivantes :
  • Après l’envoi des messages, le producteur vérifie si le message envoyé a reçu une confirmation de la part du DMS. Si l’envoi du message a échoué, le producteur envoie à nouveau les messages.
  • Une fois les messages produits, le producteur attend que l’API d’envoi de message envoie un accusé de réception (ACK) pour déterminer si les messages ont été envoyés avec succès. Si une anomalie survient pendant l’envoi du message, le producteur ne reçoit pas d’ACK. Dans ce cas, le producteur détermine s’il doit envoyer à nouveau les messages. Si le producteur reçoit un ACK réussi, les messages ont été stockés de manière fiable par DMS.
  • Pendant la consommation des messages, le consommateur consomme les messages et confirme ensuite si les messages ont été consommés avec succès.
  • Les messages produits sont stockés dans le support de stockage du service DMS. Lors de la consommation des messages, le consommateur obtient les messages stockés dans le service DMS. Ensuite, le consommateur consomme les messages, enregistre le statut de consommation du message comme réussi ou échoué. Le consommateur soumet ensuite le statut de consommation au service DMS. En fonction du statut de consommation, le service DMS détermine s’il faut consommer le prochain lot de messages ou consommer à nouveau les messages consommés en échec.
  • Au cours du processus de consommation des messages, il se peut que le statut de consommation des messages ne soit pas soumis avec succès en raison de certaines anomalies. Dans ce cas, le lot de messages correspondant sera obtenu de nouveau par le consommateur lors de la demande de consommation de messages suivante.
  • Selon le mécanisme précédent, les messages peuvent être envoyés ou consommés de manière répétée.
  • Les DMS prennent en charge le mode de file d’attente de livraison des messages selon le principe « premier entré, premier sorti » (FIFO). La file d’attente de type standard ne peut pas garantir que les messages sont strictement ordonnés, mais la file d’attente FIFO est une file d’attente strictement ordonnée. Veuillez donc sélectionner le type de file d’attente approprié en fonction du scénario commercial.

Fonctions

Le tableau suivant décrit les fonctions visibles par les locataires. Ces fonctions ne comprennent pas les fonctions d’exploitation et d’entretien.

CatégorieFonctionDescription
Fonctions de baseCréation d’une file d’attenteCrée une file d’attente pour la réception et l’envoi de messages.
Deux options sont proposées en même temps : l’une consiste à sélectionner le type de file d’attente pour les messages standard ou FIFO.
Visualisation des files d’attenteListe des informations succinctes sur toutes les files d’attente d’un locataire.
Visualisation des détails de la file d’attenteListe les détails d’une file d’attente, et les détails des groupes qui consomment des messages dans cette file.
Suppression des files d’attenteSupprime une ou plusieurs files d’attente spécifiées.
Envoi de messages à une file d’attente spécifiqueEnvoie les messages (y compris le contenu du message et les attributs du message définis par l’utilisateur) à une file d’attente spécifique.
Création d’un groupe de consommateurs de messages pour une file d’attente donnéeCrée un groupe de consommateurs de messages avec un nom spécifique. L’application peut consommer le message d’une file d’attente en utilisant un groupe de consommateurs de messages
Consommation de messages dans une file d’attente déterminéeCette fonction vous permet de choisir le type de message, y compris normal, le nombre de messages automatiquement consommés et l’intervalle entre les messages consommés. Vous pouvez également visualiser le contenu, la taille et la durée d’envoi de chaque message, et arrêter la consommation des messages.
Confirmation de la consommation du messageSoumet une confirmation de consommation de message à une file d’attente de messages après chaque cas de consommation de message.
Gérer les files d’attenteGère les files d’attente de messages via la console DMS basée sur le web.
Accès aux files d’attente de messagesAccède aux files d’attente des messages via les API RESTful pour la file d’attente standard et la file d’attente FIFO.
SurveillanceCloud Eye Service (CES)Pour plus de détails, voir la description du produit CES.
Bénéficiez gratuitement des fonctionnalités de l'offre Flexible Engine pendant 2 mois
Vous avez un projet ?
Notre solution vous intéresse ?
Nous vous répondrons sous 48 heures.
Nos offres complémentaires
Nos services d’accompagnement