web-dev-qa-db-ja.com

websocketを使用する理由とそれを使用する利点は何ですか?

私はいくつかの記事を読みましたが、このトピックについてはそれほど明確ではありませんでした。

誰かが以下のポイントを説明したいですか?

  • Httpでwebsocketを使用する理由
  • 全二重通信とは
  • 低レイテンシの相互作用とはどういう意味ですか

あらゆる形態のヘルプを歓迎します。

13
JR Sahoo.'JS'

WebSocketをHTTP経由で使用する理由

WebSocketは、クライアントとサーバー間の継続的な接続です。この連続接続により、次のことが可能になります。

  1. データは、クライアントが要求しなくても、サーバーからクライアントにいつでも送信できます。これはサーバープッシュと呼ばれることが多く、クライアントがサーバー上で何かが発生したとき(新しいチャットメッセージが受信されたときや新しい価格が更新されたとき)にクライアントがかなり迅速に知る必要があるアプリケーションにとって非常に貴重です。クライアントはhttp経由でデータをプッシュできません。クライアントは、タイムリーな新しいデータを取得するために、数秒ごとにhttp要求を作成して定期的にポーリングする必要があります。クライアントのポーリングは効率的ではありません。

  2. どちらの方法でも非常に効率的にデータを送信できます。接続はすでに確立されており、webSocketデータフレームは非常に効率的に編成されているため、必然的にヘッダー、Cookieなどを含むHTTPリクエストを介した場合よりもはるかに効率的にデータを送信できます。

全二重通信とは何ですか?

全二重とは、接続上でいつでもデータを送信できることを意味します。

低レイテンシの相互作用とはどういう意味ですか

低レイテンシとは、何かを要求してから応答を受け取るまでの遅延がほとんどないことを意味します。 webSocketsに適用されるため、接続が既に確立されているため、データをより高速に(特に低速リンク経由で)送信できることを意味するため、TCP=.

Httpリクエストを介してデータを送信する場合と、すでに確立されているwebSocket接続とを比較する場合は、この回答に記載されている手順を参照してください: websocket vs rest data for real time data?

これらの他の参照も役立つ場合があります。

関数が呼び出されるたびにサーバープッシュ:AjaxまたはWebSockets

プッシュ通知| websocketは必須ですか?

HTML5 WebSocket:Webのスケーラビリティの飛躍的な進歩

36
jfriend00