Y at-il des avantages à avoir deux connexions Websocket distinctes sur le même serveur à partir du même client? Cela me semble un mauvais choix de conception, mais y a-t-il une raison pour laquelle/où cela devrait mieux fonctionner?
Il y a plusieurs raisons pour lesquelles pourrait vous voulez le faire, mais elles ne sont probablement pas trop courantes (du moins pas encore):
Je suis sûr qu'il y a d'autres raisons mais c'est tout ce à quoi je peux penser dès le départ.
J'ai constaté que la logique client pouvait être simplifiée beaucoup plus facilement lorsque vous vous abonnez uniquement aux mises à jour de certains objets gérés par le serveur. Au lieu de concevoir un protocole d'abonnement personnalisé pour un seul canal, vous pouvez simplement ouvrir un socket pour chaque élément.
Supposons que vous ayez obtenu une collection d’éléments via une API REST à
http://myserver/api/some-elements
Vous pouvez vous abonner aux mises à jour d'un seul élément en utilisant une URL de socket comme ceci:
ws://myserver/api/some-elements/42/updates
Bien sûr, on peut dire que cela ne s’adapte pas aux pages complexes. Cependant, pour de petites applications simples, cela pourrait vous rendre la vie beaucoup plus facile.
Je suis actuellement à la recherche d'une solution pour avoir deux connexions au même websocket. Ma raison: