tutorial - wpf c#




La haute disponibilité (3)

Est-il possible de configurer un service WCF avec un point de terminaison de basculement si le point de terminaison principal meurt? Un peu comme si vous pouviez spécifier un serveur de basculement dans un cluster SQL.

Spécifiquement j'utilise la liaison TCP / IP pour la vitesse, mais sur l'occurrence rare que la machine n'est pas disponible je voudrais rediriger le trafic au serveur de basculement. Pas trop dérangé par la perte de messages. Je préfèrerais ne pas écrire le code pour gérer le re-routage.


Sans essayer de paraître trop vague, mais je pense que l'équilibrage de la charge réseau Windows (NLB) devrait gérer cela pour vous.


Nous ne l'avons pas encore fait avec WCF mais nous prévoyons d'avoir une entrée DNS locale pointant vers notre adresse IP virtuelle NLB (Network Load Balancing) qui dirigera tout le trafic vers l'un de nos serveurs hébergeant des services dans IIS. J'ai utilisé NLB pour ce scénario précis dans le passé pour les sites Web et je ne vois pas pourquoi cela ne fonctionnerait pas bien avec WCF.

La beauté de cela est que vous pouvez prendre des serveurs à l'intérieur et à l'extérieur du cluster virtuel à volonté et NLB s'occupe de toute la redirection laide vers un nœud disponible. Il est également livré avec une étiquette de prix: $ GRATUIT avec votre licence Windows Server.


Vous devez utiliser un équilibreur de charge de couche 4 devant les deux points de terminaison. Prob mieux de s'en tenir à un morceau de matériel dédié.