同じクライアントから同じサーバに2つのWebソケット接続を使用する利点はありますか?私にはこれは悪いデザインの選択肢だと思われますが、それがよりうまくいく理由は何ですか?複数のwebsocket接続
33
A
答えて
56
あなたははことをしたいかもしれないが、彼らはおそらく(少なくともまだ)あまり一般的ではない理由はいくつかあります。
- あなたが送信され、両方の暗号化と暗号化されていないデータを持っているが/ (例えば、データの一部はかさばりますが、敏感ではありません)。
- ストリーミングデータと待ち時間に敏感なデータの両方があります。インタラクティブなゲームで、ゲーム内でビデオをストリーミングすることがあります。大きなメディアストリームがレイテンシに敏感な通常のゲームメッセージの受信を遅らせることは望ましくありません。
- テキスト(JSONコントロールメッセージなど)とバイナリデータ(型付けされた配列またはBLOB)の両方があり、WebSocketsが既にこれを行っているため、独自のプロトコルレイヤーを追加して区別する必要はありません。
- サポートしている複数のWebSocketサブプロトコル(URIの後のオプション設定)があり、ページが複数のWebSocket接続にアクセスする必要があります(各WebSocket接続は1つのサブプロトコルに限定されています)。
- 同じWebサーバーとポートの背後にいくつかのWebSocketサービスがあります。クライアントが接続ごとに選択する方法は、URIパス、URIスキーム(wsまたはwss)、サブプロトコル、またはおそらくはクライアントからサーバーへの最初のメッセージにも依存します。
私には他の理由があると確信していますが、それは私が頭の上から考えることができるすべてです。
+0
+1非常に有益! – Jonas
0
私は現在、同じwebsocketに2つの接続を持つソリューションを探しています。私の理由:
- 私はQUnitのテストケースを書いて、私は複数のクライアントをシミュレートし、私はそれはあなたがはるかに簡単なクライアントロジックを作ることができることを発見し、正しい応答
0
に別のクライアントを確認したいですサーバーによって管理されている特定のオブジェクトの更新にのみサブスクライブしています。単一チャネルのカスタムサブスクリプションプロトコルを考案する代わりに、各要素のソケットを開くだけで済みます。
のは、あなたがこのようなソケットのURLを使用して、単一の要素の更新情報を購読することができ
http://myserver/api/some-elements
でREST APIを介して要素のコレクションを取得したとしましょう:コースの一つで
ws://myserver/api/some-elements/42/updates
をこれは複雑なページのために拡大しないと主張することができます。しかし、小さく簡単なアプリケーションのために、あなたの人生をもっと楽にするかもしれません。
関連する問題
- 1. WebSocket接続。 Android
- 2. ノード+接続+ WebSocketを
- 3. iPhone:Unitt WebSocket接続の問題
- 4. Websocketの接続設定
- 5. Socket.IOとWSのWebSocket接続の共有
- 6. MDB2/MySQL、複数の接続
- 7. 複数のDB接続は
- 8. PHPの複数データベース接続
- 9. マングース複数の接続は
- 10. 複数のJavaソケット接続
- 11. Yii複数のデータベース接続
- 12. 複数のデータベース接続
- 13. 複数のデータベース接続
- 14. amazonでのWebSocket接続エラーec2
- 15. WebSocketとの接続を確立する
- 16. Websocketとメッセージの接続を閉じる
- 17. Tornado WebSocketサーバーへの同時接続
- 18. .Net WebSocketプロトタイプ... Javascriptのトラブルオープン接続
- 19. Gevent-Websocketクローズド接続の検出
- 20. go websocket jsonrpcブラウザ接続のクローズ
- 21. WebSocketの接続を維持する
- 22. 同時接続数100,000のWebSocketサーバーは何ですか?
- 23. C#複数接続vsデータセット
- 24. ラチェットWebsocket Apache2 SSLがPHP websocketに接続できません
- 25. websocketに接続できません
- 26. JavaとWebSocket接続を閉じる
- 27. Websocket接続ハンドシェイクがタイムアウトしました
- 28. WebSocket接続がFireFoxで閉じない
- 29. nginx 1.2.0 - socket.io - HTTP/1.1 - プロキシwebsocket接続
- 30. アクティブレコードに複数のデータベースへの接続
REQUEST_URIも同じですか? –
@Shiplu Hmm。一度しか行われていないので、情報をuri経由で伝えるべきではありません。この場合、**はい**としましょう。 – Christian
クローズ有権者は理由を説明できますか? **なぜ私の質問は建設的ではないのですか?** – Christian