Qu'est-ce que MassTransit ajoute au RabbitMQ?

Quel est l'avantage de s'appuyer sur MassTransit<!-Par rapport à construire directement au-dessus de RabbitMQ?

je crois que L'un des avantages offerts par MassTransit est l'échange de type (publish subscribe by interface / type) de sorte que le contenu du message est structuré, comparativement aux échanges RabbitMQ simples où le contenu du message est non structuré texte / blob.

Quels sont les autres avantages offerts par MassTransit?

27
demandé sur Endy Tjahjono 2012-09-06 13:16:30

1 réponses

Choses que MT ajoute sur le dessus de RabbitMQ:

  • Multithread, simultanées consommateurs
  • sérialisation des messages, y compris les interfaces, et versioning
  • reliures d'échange automatiques, conventions de publication
  • Sagas, y compris l'état persistant via NHibernate
  • compteurs de Performance pour vos services
  • en-têtes de Message
  • traitement des défauts

ce sont juste quelques-uns, quelques plus importantes que d'autres. Le fait que le bus héberge vos consommateurs, gestionnaires, sagas, et gère tous les threading est probablement le plus grand avantage, et le fait que vous pouvez accueillir plusieurs bus dans le même processus.

la sérialisation est le deuxième plus grand avantage, car cela peut être douloureux à comprendre, et obtenir un contrat de message basé sur l'interface avec la désérialisation automatique en types (y compris les types d'interface soutenus dynamiquement) est énorme. Publication d'une seule classe qui met en œuvre des interfaces multiples, et de voir tous les consommateurs intéressés ramasser leur morceau du message asynchrone est tout simplement génial dans la production que de nouvelles interfaces peuvent être ajoutées aux producteurs et les consommateurs de niveau inférieur ne sont pas affectés.

Ceux qui sont un peu, vous pouvez consulter la documentation pour plus d' http://masstransit-project.com/MassTransit/understand/additions-to-transport.html, ou de donner la récente .NET Rochers! podcast a écouter pour certains contenu connexe par votre serviteur.

37
répondu Chris Patterson 2017-09-25 10:56:40