2013-05-22 3 views
1

J'ai une bonne compréhension SignalR Hubs dans un scénario client/serveur, où le client et le serveur sont étroitement couplés.Comment mettre en œuvre correctement SignalR dans un environnement SOA distribué?

Disons que j'ai un service WCF qui reçoit une mise à jour d'une ressource externe. Ce service pourrait mettre à jour la base de données avec une nouvelle valeur. Cependant, le client devra être averti qu'une mise à jour a eu lieu. Cela pourrait être géré par un proxy de service qui notifie le client (ressemble un peu à l'interrogation) ou une ressource de cache.

Je peux créer des clients basés sur C# et connecter tous les nœuds via des concentrateurs SignalR, mais cela crée un système fermé non distribué. Un concentrateur SignaR qui se connecte à un service WCF pourrait utiliser .Net 4.5 pourrait implémenter une opération de service asynchrone WCF, où un client concentrateur serait averti de toute modification des données de service.

J'ai vu quelque chose de similaire dans Push Notifications with NServiceBus and SignaR, mais je ne sais pas si c'est une solution optimale au niveau de la production.

Quelles autres méthodes pourraient être utilisées dans ce scénario et comment seraient-elles mises en œuvre?

Répondre

0

Si vous n'utilisez pas les notifications push directement sur le client ou une sorte d'interrogation longue, il est assez courant de communiquer avec les clients sur un autre canal. Ne sachant pas l'analyse de rentabilisation, il est difficile de dire ce qui serait faisable. Habituellement, cela se manifeste sous la forme de SMS, de notifications push sur mobile, email, etc. Cela ne répond pas directement à votre question, mais vous pouvez trouver qu'il existe un autre moyen d'atteindre votre objectif.

Questions connexes