くま's Tech系Blog

基本的には技術で学んだことを書き留めようと思います。雑談もやるかもね!

Cookie/Session/キャッシュとは?Webブラウザの重要な要素を解説

今回はWebブラウザを使うときによく耳にするCookie/Session/キャッシュについて記載します。

CookieSessionキャッシュってWebでよく聞く、似たようなものじゃないの?と思うかもしれませんが、違うものなのでそれぞれ紹介していきます。

ちなみに、今回タイトルはAIに決めてもらいました。今までの自分のブログと毛色が違うタイトルになりましたが、いいタイトルになったと思います。

Session

まず、Sessionとは一体なんでしょうか?

Sessionは複数のリクエストを同一ユーザーと認識すること(機能)です。

HTTPは状態を持たないため同じブラウザでリクエストしても同じユーザーとは認識できないという特徴があります。

同じユーザーとは認識できるようにするのがSessionの役割です。

セッションとは、ウェブサーバー上で動作しているアプリケーションがユーザーの情報を一時的に保存する仕組みです。一般的に、この情報はサーバーのメモリやデータベースに保存されます。

例えば、ユーザーがウェブサイトを訪れると、セッションが開始され、セッションIDが生成されます。 IDはこの後説明するCookieとしてブラウザに保存されます。 ユーザーが再びサイトを訪れると、IDに基づいてサーバー側の情報が呼び出されます。

例えば、ChromeCookieを確認するには、以下にアクセスすることで確認できます。

Sessionで「複数のリクエストを同一ユーザーと認識する」と説明しました。

Cookieはユーザー識別を実現させるための手段なので、Sessionとは異なります。(Sessionは目的や機能を表しています)

Cookieはユーザーのブラウザに直接保存される小さなテキストファイルです。 サーバーがテキストファイルをブラウザに送信し、ブラウザは保存して次回のサーバーへのリクエスト時に同じCookieを送り返します。
Cookieはクライアント側のマシン(主にブラウザ)にのみ保存され、セッションはブラウザだけでなく、サーバーにも情報が保存されます。

キャッシュ

キャッシュについては「キャッシュを削除してください」という言葉を聞いたことがある方もいるかもしれません。

キャッシュは、よく使うデータへのアクセスを速くするために、より高速な記憶装置に一時的に保存する仕組みのことを指します。 Webサイトのキャッシュは、頻繁にアクセスされるコンテンツを保存し、その情報を呼び出すことで表示速度を高速化します。

例えば、一度アクセスしたウェブページの画像やJSやCSS などのデータを保存して、次回以降同じページにアクセスしたときに再度読み込む必要がなくなり、ページの表示速度が速くなります。

JSやCSS などのデータを更新した場合に変更が反映されない場合は、コンテンツを保存している可能性があるため、「キャッシュを削除してください」といわれることがあります。

最後に

似たような言葉ですが、明確に意味が分かれていると思います。

主に、セキュリティ面で使用すると思うので、気になる方はさらに深掘りしてみてください!

参照

ipeinc.jp

ssaits.jp