ステートフルとステートレス
クライアントの状態を保持して次の処理に反映させるような方式をステートフル、状態を保持せずに次の処理に反映させない方式をステートレス。
多数のクライアント情報を1台のサーバ内に保持するとサーバに負担がかかり処理が遅くなるので、サーバ上にクライアント情報を保持しない「ステートレス」な設計がWebの原則としてある。
リクエストとレスポンス
ブラウザからサーバに向けて処理してほしい内容を送信することをリクエスト。サーバー側でそのリクエスト内容を処理した結果を返すことをレスポンス。
プロトコル
ネットワークに接続された機器同志が通信するための共通的なルールや手順のこと。機器同士の通信でルールが異なると、ブラウザや端末によって通信できなかったりして困るので、統一することで機器同士のデータのやりとりが可能になっている。
また、そのような通信サービスに使用する様々なプロトコルの集合体を「TCP/IP」とも言う。
Cookie
状態を保持しないステートレスなWebにて状態を保持して管理するステートフルな機能を使用したいときに使うデータがCookie。
Webは基本原則として「ステートレス」でなくてならず、Web自体には状態を保持して管理する仕組みがない。だが、近年ECサイトのカート情報などクライアント情報を保持する「ステートフル」性も求められきたことから使用されるようになった。
リクエスト送信時にサーバーでクライアント情報をCookieに格納してレスポンスとしてCookie
を返してブラウザ上に保存。次リクエストするときにブラウザのCookieをクライアント情報とともにサーバーに送ることでサーバはクライアント情報を識別できるようになる。
ブラウザ上にずっとCookieを保持したままだとCookieの中身の情報を盗まれるなどセキュリティ的によろしくないのでCookieの使用期限を設定できる。
ポート番号
インターネットに接続するとき、どのコンピュータのどのサービスに接続するのか指定する必要がある。「どのコンピュータか」を表すものをIPアドレス、「どのサービスか」を表すのをポート番号と呼ぶ。