les inconvénients des websockets
Je voudrais savoir quel genre de limitations il y a à utiliser les websockets.
Websockets est tellement.. puissant. Je ne peux pas imaginer qu'il est sans les inconvénients.
Dire, quel est le nombre d'utilisateurs qui peuvent se connecter simultanément à un serveur (si je suis en train de créer un jeu et les utilisateurs se connectent au jeu à travers les WebSockets, ce qui va limiter le nombre d'utilisateurs en mesure de se connecter à tout moment?)
Aussi est-il vrai qu'à chaque connexion, la qualité des connexions (vitesse et des trucs comme ça) va diminuer?
- le fil que vous avez lié est à propos de Gmail.. pas vraiment les websockets. J'ai édité ma question à se concentrer davantage sur la deuxième partie de la question dans l'affaire de toutes les confusions.
Vous devez vous connecter pour publier un commentaire.
Les avantages et les inconvénients de cours dépendent du cas d'utilisation spécifiques, mais je vais essayer de souligner certaines différences entre les WebSocket et HTTP.
WebSocket est plus complexe que HTTP. Vous pouvez établir une connexion HTTP avec un client telnet, mais vous ne pourrez probablement pas faire la même chose avec WS. Même si vous avez ignoré la poignée de main (qui incluent l'utilisation de la fonction de hashage SHA1), vous serait alors pas en mesure de bien le masque et la trame de données à envoyer, et le serveur ferme la connexion.
Comme Uwe dit, WebSocket connexions sont destinés à être plus persistants que les connexions HTTP. Si vous ne voulez recevoir une mise à jour toutes les 30 minutes, vous voulez aller avec HTTP. Si vous souhaitez recevoir des mises à jour à chaque seconde, un WebSocket pourrait être une meilleure option, car l'établissement d'une connexion HTTP et prend beaucoup de temps.
D'établir une connexion HTTP, vous devez d'abord établir une connexion TCP (SYN, SYN/ACK, ACK), puis envoyer une requête GET avec un assez grand en-tête, puis enfin de recevoir la réponse du serveur (avec une autre grosse-tête).
Avec un WebSocket il vous suffit de recevoir la réponse (pas de demande nécessaire), et il est livré avec une beaucoup plus petite en-tête: à partir de deux octets pour les petites images, jusqu'à 10 octets pour ridiculement grands cadres (dans la gamme gigabyte).
Vous avez besoin de peser les deux coûts (en gardant une connexion ouverte vs d'établir une nouvelle connexion) pour décider entre les deux protocoles.
Note: cette réponse est fondée sur le projet de protocole (draft-ietf-hybi-thewebsocketprotocol-09). WebSocket est en évolution rapide, de nombreuses implémentations sont toujours basés sur les anciennes versions, certains détails peuvent changer avant qu'il soit finalisé.
De ce que j'ai lu, cela semble être lié à HTTP Server Push j'ai lu qu'il est généralement recommandé de ne pas utiliser, car il crée un grand nombre de connexions sur le serveur.
Si je dois choisir, je n'aurais probablement toujours développer un client mécanisme d'interrogation.