
キャッシュサーバーってなに?
なんのためにあるの?
CDNってなに?
こういった疑問にこたえます。
- キャッシュサーバーとはなにかがわかる
- CDNとはなにかわかる
エンジニアの僕がわかりやすく解説します。
キャッシュサーバーとは

キャッシュサーバーは通信を仲介してサーバーの負荷を減らす役割があります。
コンテンツをハードディスクから読み出す処理やDBMSのデータ検索処理は、リクエストの数が多くなるにつれてサーバの負荷が大きくなりレスポンスが悪くなります。
更新が少ないコンテンツやデータであれば、リクエストに対するレスポンスの内容を覚えておき、それを返すことで毎回コンテンツを読み込んだりデータ検索処理を実行しなくても良くなります。
リクエストに対するレスポンスの内容を覚えているのがキャッシュサーバーです。
キャッシュサーバーで記憶しているリクエストが来た場合は、Webサーバーの代わりにレスポンスを返します。
逆に、キャッシュサーバーで記憶していないリクエストが来た場合はそのままWebサーバーにリクエストを転送します。
キャッシュの有効期限
キャッシュには有効期限を設定しておく必要があります。
もしキャッシュに有効期限がなかったとしたら、同じリクエストに対してキャッシュサーバーがいつまでも同じコンテンツを返し続けることになります。
キャッシュに有効期限を設定しておき、期限がすぎたらキャッシュを消去して再度新しい情報を記憶させるようにしておく必要があります。
CDNとは
CDNは世界中に配置されたキャッシュサーバーの集合体です。
あらかじめ画像や動画などの大容量コンテンツのキャッシュをWebサーバーから取得しておき、CDN全体で1台のキャッシュサーバーのように動作します。
CDNではリクエストに対しアクセス元から一番近いサーバーが対応することで、より速いレスポンスが返せるようになっています。
Web制作をしている人はjQueryの読み込みでCDNを使ったことがあるかもしれません。
CDNを使うと読み込みが速いと言われている理由がわかったのではないでしょうか?
キャッシュサーバとは?まとめ
解説の内容をまとめます。
- キャッシュサーバーは通信を仲介してWebサーバーの負荷を減らす役割がある
- キャッシュには有効期限を設定し、新しい情報を記憶させておく必要がある
- CDNは世界中に配置されたキャッシュサーバーの集合体
以上、お疲れ様でした。
コメント