J'essaie de créer une conversation simple avec websockets
. J'affiche également les utilisateurs actifs actuels dans le chat, et voici où les problèmes commencent: nous utilisons une ferme Web. Un utilisateur peut se connecter via un serveur loadbalancer
à un serveur. Lorsqu'une nouvelle connexion rencontre un serveur, elle augmente un compteur dans un SQL database
et notifie les autres serveurs de la batterie via rabbit MQ
.Connexions actives sur la batterie de serveurs Web
Tous les autres serveurs récupèrent les nouvelles données et les renvoient à leurs utilisateurs connectés.
Si un utilisateur se déconnecte, la même chose se produira: Le serveur diminue le compteur dans la base de données SQL et rabbit MQ
tous les autres serveurs le savent.
Mais, que se passera-t-il lorsqu'un serveur meurt? par exemple, Si 10 utilisateurs seront connectés à ce serveur. Lorsque ce serveur tombe en panne, tous les utilisateurs sont déconnectés, mais cela n'est plus mis à jour dans la base de données.
Quelle est la meilleure solution pour obtenir le nombre total d'utilisateurs actifs dans une ferme Web? Et notifier les utilisateurs lorsque ce montant a changé?
Merci d'avance!
Oh BTW, nous utilisons signalr