2016-08-21 2 views
0

notre équipe a travaillé sur l'application pour la base e-organisation sur l'architecture orientée services (SOA) et veulent des services intégrés et d'autres applications lagacy et applications système qui se développent avant et communiquer avec une nouvelle application et de nouveaux systèmes avec Enterprise Service Bus (ESB) comme NServiceBus. mon problème est la façon de concevoir l'interface ou classe abstraite pour consommation de services (UI- BackEnd conception que les utilisateurs peuvent définir propres services et d'autres applications et systèmes consomment ces services par l'ESB (comme NServiceBus).Développement NServiceBus (Conception de l'interface pour le service utilisateur)

+0

Avez ma réponse vous aide? Avez-vous oublié quelque chose? –

Répondre

0
de toute idée?

communication asynchrone

la conception de la 'interface' est la conception des messages qui circulent de manière asynchrone entre les services.

messages comme types .NET

messages avec NServiceBus sont des classes ou des interfaces .net qui sont (dé) sérialisées de/vers xml, json ou un autre sérialiseur.

http://docs.particular.net/nservicebus/messaging/messages-as-interfaces

Cela signifie que nous nous attendons à un xml ou un message JSON à désérialisé du type .net correspondant à la sérialiseur configuré.

Si vous modélisez des messages au format XML/JSON et que vous pouvez ensuite générer une représentation de classe de type safe, alors tout va bien. Sinon, vous manquez le modèle de programmation que NServiceBus essaie d'appliquer.

Intégration native sans NServiceBus

Cependant, les messages sur le fil sont XML/JSON ou tout autre format que vous choisissez ce qui le rend plus facile d'intégrer nativement via le transport sous-jacent comme MSMQ, RabbitMQ, service SQL, Azure Bus, Azure Storage Queues ou l'un des transports pris en charge par la communauté si le côté de réception ou d'envoi n'est pas un processus .NET NServiceBus. Cependant, vous aurez besoin de mettre en œuvre votre propre sérialisation, gestion des transactions, pubsub et pipeline de processus.

modèles d'intégration

Si vous souhaitez intégrer des applications existantes ou des systèmes externes, puis un bon livre pour se familiariser avec les modèles d'intégration communs est:

http://www.enterpriseintegrationpatterns.com/

transformation des données et de transition protocole

Relatif aux intégrations de construction je pense qu'une bonne lecture serait:

http://udidahan.com/2011/04/08/integration-how-and-where/

Le billet de blog parle de la transformation de données et du pontage de protocole. Ce ne sont pas des fonctionnalités natives fournies par NServiceBus.

canaux d'intégration NServiceBus

Il est assez courant que vous avez des services d'intégration NServiceBus qui prendrait soin de la transformation et de la communication pour un canal d'intégration spécifique.De tels canaux pourraient très bien avoir un schéma (public) différent de la façon dont les données sont stockées et/ou communiquées dans une collection de composants indépendants qui représentent un service ou un système SOA et qui utilisent NServiceBus pour la communication.

Autres ressources

Cela pourrait vous aider à emballer vos systèmes existants et de les exposer sous forme de messages systèmes basés qui peuvent envoyer/recevoir des messages asynchrones.

Vous pouvez trouver ici des vidéos pertinentes: http://particular.net/videos-and-presentations

+0

merci beaucoup pour la réponse Ramon. Notre équipe conçoit un bpms et déploie dans les organisations et décide de concevoir et implémenter un Concepteur de Message sur le NServiceBus pour les Consommateurs (comme les autres Applications et WebServices et ...) pour Concevoir ses propres messages pour intrait avec d'autres services et applications dans l'organisation. Ma question est la suivante: l'interface IMessage (NServiceBus) Design and Develope est-elle satisfaite de mes objectifs? –

+0

J'ai mis à jour le post, s'il vous plaît laissez-moi savoir si cela vous fournit suffisamment d'informations. –