Je suis actuellement en train d'analyser et de concevoir une nouvelle architecture de bus de messages dans mon entreprise. J'ai essayé MSMQ de faire quelque chose comme ça dans le passé et cela fonctionne bien et pensait refaire la même chose pour ce projet mais en utilisant WCF comme API au lieu d'utiliser l'API System.Messaging. Quelqu'un at-il eu de l'expérience avec MSMQ en WCF? Est-il plus facile d'utiliser l'API System.Messaging? Quels seraient les avantages d'utiliser WCF sur System.Messaging ou vice versa?Implémentation d'une architecture de bus de messages
Répondre
à mon humble avis, avec tant de bonnes, flexibles et architectures de bus éprouvées pour choisir (NServiceBus, Mass Transit, Rhino Service Bus), mettre en œuvre votre propre serait un grand NIH. Ce n'est pas une tâche triviale.
Udi le décrit très bien dans this message.
le courtier de messages Apache ActiveMQ (open source) a également un client .NET:
Avec Apache Camel et Apache ServiceMix, les modèles d'intégration d'entreprise et les systèmes de bus de services d'entreprise sont faciles à mettre en place .
Désolé, j'arrive très tard, mais j'espère que ma réponse sera utile.
Les deux WCF Queuing et System.Messaging sont des wrappers sur les API MSMQ. WCF est plus sophistiqué et complexe, mais présente les avantages suivants:
- Une vue OO des processus métier de votre application plutôt que de sa plomberie de communication.
- Cryptage et authentification de bout en bout des messages gratuitement. System.Messaging prend uniquement en charge le chiffrement sur le réseau, pas dans le magasin.
- Si vous le souhaitez, vous pouvez héberger dans IIS plutôt que de créer votre propre hôte personnalisé.
- La corrélation des messages est gratuite. Cela vous permet de grouper automatiquement les messages dans les sessions.
- Traitement par lots transactionnel gratuit.
Avec WCF, vous n'avez pas besoin d'installer IIS pour fournir un service quelconque.Réponse trompeuse. – argatxa
@argatxa: Je dis qu'avec WCF, vous pouvez héberger dans IIS. Je suis d'accord que vous n'avez pas besoin d'héberger dans IIS. Je vais modifier ma réponse pour refléter cela. – RoadWarrior
@RoadWarrior Votre première comparaison est correcte mais vous êtes incorrect dans d'autres. 1) MSMQ et WCF ont des ID de corrélation. 2) MSMQ a des transactions 3) MSMQ utilise l'authentification ainsi que l'autorisation. On pourrait aussi soutenir que MSMQ est plus difficile que WCF simplement parce que c'est une API MOM – MickyD
mausch merci pour les informations sur les systèmes de bus de messages déjà là. Je ne savais pas qu'il y avait déjà des systèmes comme celui-ci ouverts au public! – heartlandcoder
Comment est-ce une réponse à la question du PO de ce qui est essentiellement devrait-il utiliser straight-up ** MSMQ ** ou ** WCF avec liaison MSMQ **? ** RoadWarriors ** répondre ci-dessous, je pense est plus en ligne avec la question du PO. – MickyD