zenet_logo

-株式会社ゼネット技術ブログ-

初心者向け WebSocket入門|HTTPとの違いをわかりやすく解説


ゼネットの西村です。

WebSocketについて業務で扱ったので、
今回はWebSocketについての情報を初心者向けにまとめてみました。

WebSocketとは?

WebSocketを一言でいうと「双方向通信を可能にするプロトコル」です。

特筆すべき点は以下になります。

  • クライアントとサーバー間で常時接続を維持
  • リアルタイム通信が可能

HTTPとはどう違うのか?

HTTPについて

  • HTTPはクライアントがリクエストを送信しない限り
    サーバからのデータ送信はできません。
HTTPの通信図

WebSocketについて

  •  WebSocketは「双方向にデータを送受信できる」ことがHTTPとは異なる大きな特徴になります。
    そのため、チャットツールのように誰かが入力したメッセージが他の利用者の画面に即座に反映される仕組みではWebSocketがよく利用されます。
    • (*以下の図の①と②の工程がハンドシェイクとなります。
      ハンドシェイクはHTTP経由で行われて、WebSocket確立後はHTTPとは異なるプロトコルで動作します。)
WebSocketの通信図

どんなアプリに使われてるの?

WebSocketが使用されているアプリケーションには以下のものがあります。
特徴としてはリアルタイム性が高いアプリケーションに使用されることが多いです。

  • SNS
  • チャットアプリ
  • オンラインゲーム
  • 株価や仮想通貨などの取引サイト

最後に

最後まで読んでいただきありがとうございます。

今回はWebSocketについての初心者向けの知識についてまとめました。
初めてWebSocketを触った時は何がなんだか分からなかったのですが、
HTTPとの違いなどからWebSocketを紐解くと意外と分かりやすかったりします。

今後機会があればRuby on RailsでのWebSocketの実装方法や、
セキュリティ的に注意するべき内容なども書いていきたいです。

参考文献