応用情報技術者平成28年秋期 午前7
WebSocketによって実現できるのはどれか。
1、WebSocketは、
Webアプリケーションにおいてクライアント(Webブラウザ)とWebサーバの間で効率的な双方向通信を実現するプロトコルです。
・Webにおける標準プロトコルであるHTTPは
「クライアントのリクエストに対してサーバがレスポンスする」という1組の通信が基本手順になっていて、サーバが自発的にクライアントに対してデータを送れるようにはなっていません。
HTTP:
クライアント⇒リクエスト⇒サーバ⇒レスポンス
・HTTPの問題点:※自動的に最新情報を更新する必要システムがその問題あり。
HTTPの仕組み(例えば自動的に最新情報に更新されるシステム)を実現するためにはAjaxのようにクライアントから定期的にリクエストを送らせ、サーバ側で適宜返答を行う仕組みが必要でした。しかし短い間隔で定期的に行われる情報取得の度にTCPコネクションが確立され、HTTPでのやり取りが発生するためパフォーマンス的には決して良い方法ではありませんでした。
クライアント⇒リクエスト⇒サーバ⇒レスポンス
(定期的に)
※短間隔で上記の流れを定期的に行われるので、効率が悪いです。
・WebSocket
WebSocketを使用したデータ通信では、まずHTTPの手順に則り、クライアントとサーバで1組のHTTP通信を交してWebSocket用の通信路を確立します。その後はHTTPの手順に縛られず、1つのTCPコネクション上でデータのやり取りが行えるようになっています。この仕組みによりオーバヘッドが少なくなり、リアルタイム性が必要とされるシステムを効率的に実現できるようになります。
WebSocket用の通信路を確立してから、1つのTCPコンネクション上でデータのやり取りを行える。
リアルタイム性が必要なシステムが実現できる。