一覧に戻る
Lv.3

WebSocket

WebSocket

Webブラウザなどのクライアントとサーバーをつなぎっぱなしにして、リアルタイムに通信する技術

名前のヒミツ

「Web(ウェブ)」と「Socket(ソケット)」を組み合わせた言葉だよ。 ソケットというのは、ネットワーク上でプログラム同士をつなぐ接続口のことなんだ。 Web上でこの接続口を使って、自由におしゃべりできるようにする仕組みだからこう呼ばれているよ。

簡単に説明すると

チャットアプリやオンラインゲームで、リアルタイムに情報が更新される裏側で使われている技術だよ。 普通のWebサイトを見る時の仕組みだと、自分から「新しい情報ある?」って聞きに行かないと画面が変わらないんだ。 でもこれを使うと、電話をつなぎっぱなしにしているみたいに、サーバーから「新しいメッセージが来たよ!」ってすぐに教えてもらえるんだよ。

くわしく見てみよう!

WebSocketとは、Webブラウザなどのクライアントとサーバーの間で、双方向の通信をリアルタイムに行うための技術のことだよ。
一度接続を確立すると、電話をつなぎっぱなしにするように、ずっと通信路が開いたままになるんだ。

普通のWebページを見るときに使われるHTTPという仕組みは、自分からお願いして返事をもらう形が基本なんだ。
「このページを見せて」と頼んで、「はいどうぞ」と受け取る、一問一答のようなやり取りなんだよ。
もし新しい情報が欲しいなら、もう一度自分から頼みに行かないといけないんだ。

でもこれを使えば、サーバー側から「新しいデータが届いたよ」と好きなタイミングで送ることができるようになるんだ。
いちいち確認しに行かなくてもいいから、チャットのメッセージがすぐに届いたり、対戦ゲームで相手の動きがリアルタイムに反映されたりするんだよ。

一度つないだ後は余計な手続きなしでデータを送り合えるから、通信の無駄が少なくて済むのも特徴だね。
リアルタイム性が大事なアプリでよく使われていて、特にチャットや対戦ゲームのように双方向で素早くやり取りしたい場面で活躍しているんだ。