tamakipedia

フロントエンドエンジニア。Typescriptもう特訓中です。一日の振り返りや学んだことをちょっとずつ吐いています。

CDN の仕組み

slick使う機会があって
今回もいつも通りCDNを使ったんだけど
そもそもCDNってなんなのか
噛み砕いていきましょう!

CDNとは

CDNとはContent Delivery Networkの略で,
別のサーバーにコピーを置くことで誰でも使えるようにしたものです。
別のサーバーに負荷を肩代わりさせて、自分のサーバーの負荷の肩代わりをしてくれます!

CDNの仕組み

* クライアント  
* DNS
* エッジサーバー  
* オリジンサーバー  

で成り立っています。

まず、DNSに行き先をお問い合わせします。カスタマーサービスですね。
DNSとはドメインネームシステムの略で、インターネット上でドメイン名を管理するために作成されたシステムです。

次に、DNSに問い合わせた住所を元にエッジサーバーを特定します。
エッジサーバーはサーバーの中でもクライアントにより近いサーバーのことです。
特定したサーバーにもしキャッシュが残っていれば
( 前回ログインした際に、データを保存しておくこと )
それらをそのままクライアントに返します。

もし、なければ、エッジサーバーがオリジンサーバーに取りに行ってくれる。
と行った流れになります。

CDNのメリット

一番のメリットはオリジンサーバーの負荷を下げられる、高速化につながるということです。

もちろんデメリットもあって、「誤キャッシュ」などと呼ばれる。
以前に利用した人の個人情報がキャッシュされ
次に利用する人がキャッシュされた情報を確認できてしまうことにつながるそうです。。

個人情報流出に発展する可能性が秘められているわけです。

おしまい