Comment éviter point de défaillance unique lorsque vous utilisez serveur d'état ASP.NET sur le site

StackOverflow https://stackoverflow.com/questions/1163126

Question

Dans mon projet actuel, nous devons créer un site Web (ASP.NET MVC) qui est susceptible d'avoir une charge suffisante pour exiger une batterie de serveurs. Je comprends que si batterie de serveurs est utilisé, les états de session doivent être stockés sur un autre endroit comme la base de données de serveur SQL ou serveur d'état.

Après quelques essais, nous sommes enclins à utiliser le mécanisme de serveur d'État, mais le fait qu'il aura point de défaillance unique, me rend nerveux. Y at-il une méthode par laquelle nous pouvons éviter « point de défaillance » lors de l'utilisation serveur d'état?

Était-ce utile?

La solution

Il y a quelque chose appelé session de partage d'état que vous pouvez utiliser, afin d'éviter un single point of failure. Si cela ne vous convient toujours pas, alors vous pourriez envisager d'essayer ASP.NET Velocity projet, il semble prometteur, même si elle est seulement au stade CTP.

Si vous voulez l'évolutivité et la redondance complète, alors vous devriez probablement utiliser un cluster SQL Server.

Autres conseils

SharedCache ( http://www.sharedcache.com ou http://sharedcache.codeplex.com ) a une mise en œuvre pour les sessions, il est pas libéré à ce jour, mais les gens utilisent.

Vous pouvez configurer la réplication SQL Server à une autre machine ou utiliser un cluster de basculement . Cela pourrait être coûteux, mais rendrait votre composant de base de données plus robuste.

Techniquement, votre chambre d'équipement de serveur web est un point de défaillance unique, ainsi que votre réseau, etc. Je ne serais pas forcément plus nerveux au sujet de l'état de session que tous ceux-ci.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top