2010-06-29 22 views
21

Quelle est la différence entre un bus de message [1] et un courtier de messages [2]différence entre le bus de message et courtier de messages

  • deux est middleware pour les applications
  • deux peuvent être utilisés pour découpler différents systèmes
  • Les deux peuvent avoir un modèle canonique
  • Les deux messages d'itinéraire et pourrait offrir d'autres fonctionnalités telles que les données transforment

Comme je vois, la seule différence relevent est l'image utilisée pour représenter chacun d'un ..

S'il y a une différence entre alors, s'il vous plaît dites-moi quoi.
Si elles sont les mêmes, s'il vous plaît dites-moi pourquoi deux concepts pour se référer à la même fonctionnalité.

Merci.

[1] http://www.eaipatterns.com/MessageBus.html
[2] http://www.eaipatterns.com/MessageBroker.html

Répondre

12

Le bus de message implique un protocole commun parlée et comprise par tous les participants. Il y a peu ou pas de logique dans le bus. Habituellement, le message est transmis à tous les systèmes connectés. L'architecture hub-and-spoke (ou «courtier de messages») dispose d'un logiciel central qui comprend les messages qui lui sont envoyés, les traduit et les transmet aux systèmes qui en ont besoin.

+3

Merci. Selon "Enterprise Integration Patterns" de Gregor Hohpe, un bus de messages a un routeur à l'intérieur.En fait, il peut prendre en charge des modèles d'échange de messages tels que publish-subscribe, il ne s'agit donc pas d'un simple répéteur de message. Le bus de messages utilise un modèle de données canonique, mais les applications peuvent utiliser des adaptateurs. Il n'est donc pas obligatoire que toutes les applications utilisent le même format de données. Enfin, vous dites qu'un courtier de messages est une «pièce maîtresse du logiciel» mais une fois implémenté, vous pouvez regarder le bus de messages de la même manière (toutes les applications envoient des messages au même point de terminaison). –

+0

Merci, explication très succincte, passez un examen dans deux jours, cela vous aidera! – mitchellt

1

explication Nice MuleSoft sur les différences entre Message Broker et Enterprise Service Bus -

https://www.mulesoft.com/resources/esb/enterprise-application-integration-eai-and-esb

Citation de l'article: "Enterprise Bus: ... Bien (ie Message Broker) est toujours utilisé un composant de routage central permettant de passer des messages d'un système à l'autre, l'architecture de bus a cherché à alléger le fardeau des fonctionnalités sur un seul composant en distribuant certaines tâches d'intégration à d'autres parties du réseau

groupé en variou s configurations via des fichiers de configuration pour gérer n'importe quel scénario d'intégration de la manière la plus efficace possible, et pourrait être hébergé n'importe où dans l'infrastructure, ou dupliqué pour l'évolutivité dans de grandes régions géographiques.

+0

Bienvenue dans Stack Overflow! Bien que cela puisse théoriquement répondre à la question, [il serait préférable] (// meta.stackoverflow.com/q/8259) d'inclure ici les parties essentielles de la réponse, et de fournir le lien pour référence. – manetsus

+0

Correction: c'est une explication de la façon dont Mulesoft distingue ces termes, pour le meilleur ou pour le pire - pire en fait. –

-2

D'abord reconnaître que ce sont des termes inventés adoptés à partir de métaphores existantes, comme la plupart des termes spécifiques au domaine sont. Personne n'a l'autorité pour les définir, mais nous faisons juste ce que nous faisons (l'industrie).

La métaphore du courtier fonctionne bien avec une disposition en étoile. La métaphore du bus fonctionne mieux dans une situation d'adressage direct. Qu'est-ce qui empêche votre client d'envoyer un message à un certain nombre de courtiers assis dans le bus, dans le carrefour ou ailleurs? Les définitions des métaphores commencent à devenir un peu stupides.

Déterminez ce que vous voulez faire et choisissez un produit qui le fait le mieux - indice: il va probablement fournir des fonctionnalités des deux technologies dites de bus ou de courtier.