CDNについて - pjmtdw/kagetra GitHub Wiki

このページはobsoleteです.景虎はCDNを使わないことにしました.

概要

景虎は基本的に他サービスとの連携は行なわず,景虎内で全機能を完結させている. その理由としては他サービスと連携させるとそのサービスのAPIが変更されたときや, サービスが移転および終了したときに景虎のソースコードの修正が必要になりメンテナンスが大変になるからである.

ただし,その唯一の例外がCDN(Content Delivery Network)の利用である.CDNには色々種類があるが,景虎で利用しているのはJavaScript(およびそれに付随するCSS)ライブラリの配布を行うCDNである.

使い方としてはシンプルで,例えばCDNJSが提供しているjQueryを使用するには

<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>

をページのヘッダに埋め込むだけである.

CDNのメリット・デメリット

メリット

  • VPSサーバよりCDNを提供している会社が経営するサーバの方からコンテンツを取って来る方がダウンロードが大抵は速い(複数の物理サーバから地理的に近いものを選択してくれるとかその辺を最適化してくれてるはずだから).
  • 同じ理由でVPSサーバに負担をかけずに済む
  • みんなが同じCDNサーバを利用した場合ブラウザにそのコンテンツがキャッシュされている可能性が高い.

デメリット

  • 良く使われるJavaScriptライブラリしか用意されていない.
  • URLが変わったりサービスが終了する可能性がある.

CDNのURL変更/サービス終了したとき景虎ですべきこと

正直な話景虎はCDNを使わなければならないほど過剰なアクセスがある訳ではないので別に使う必要はない. 興味本位で使ってみただけである.

という訳なので景虎が使っているCDNJSがサービス終了したり古いJavaScriptライブラリの提供を止めた場合以下のファイルを修正する必要がある.

views/js/main.coffee
views/layout.haml

この中で使われているライブラリをダウンロードしてきてVPSサーバに置き,そのURLを変更する.

⚠️ **GitHub.com Fallback** ⚠️