<ネットワーク最適化Forum2018>
「CDNを活用したワンランク上のITインフラ運用術~進化するハイブリッドクラウド環境におけるCDNの役割を活用事例を交えて紐解く」
本記事は、2018年1月30日(水)に開催されたイベントでのCDNetworksの講演 において、当日は時間の都合で一部お伝えできなかった点についてまとめましたので、是非ご一読ください。
=======================
”キャッシュ”と言えば静的コンテンツに対する技術であることはよく知られていますが、”動的コンテンツをキャッシュする”という技術はご存知でしょうか?
最近ではこれを売りにしているCDNプロバイダも出てきているため、少しずつその認知度は上がってきています。
この新しい技術において特徴的なのは「インスタントパージ(コンテンツ即時削除)」と言われる、新たな書き込みがあった場合のみ古いコンテンツを強制削除するという方法です。
CDNetowrksでは、この動的コンテンツをキャッシュするための技術として、インスタントパージとは違ったアプローチでこの問題に対処した事例を本日はご紹介させていただきます。
某家電メーカ様の実例
– 課題:Webサーバの負荷を軽減し、自社設備の効率化を図りたい
”開発者向けのフォーラムがあるのですが、そこそこ自社Webサーバの負荷が高いため、既に画像や諸々変化のないコンテンツエレメントはCDNにキャッシュしていました。しかしながら、書き込みの更新がある以上、キャッシュができない文字データが中心であるため、なかなか負荷を下げることができません。”と言ったお悩みがございました。
”さらにフォーラム部分だけはPHPアプリケーションのパッケージとなっており、データベースも絡んでいるため、自社Webサーバからは簡単に動かせず、アプリケーション的にもかなり重く、またフォーラムは誰かが更新しない限り動きのないページなのに性質上キャッシュもできない上に、開発者向けのためにアクセスだけはとても多いのです。”というお悩みでした。
折しもCDNを使い始めたばかりで、出来るだけ自社設備は縮小していきたいと検討されていた矢先でもあり、どうすればいいか?と担当者さまは頭を抱えていました。
(クリックで拡大)
– 解決策:動的コンテンツのキャッシュとインスタントパージ(コンテンツ即時削除) を試してみた
そこで、フォーラムを常時キャッシュしておいて、新たな書き込みがあったときだけキャッシュの強制削除ができれば解決できると言うことで、通常キャッシュができないとさている動的コンテンツのキャッシュを試みることとし、インスタントパージが出来るCDNベンダのAPIを組み込もうとしたのですが・・・。
結果は、フォーラムの部分はWebアプリケーションパッケージだったため、このようなAPIの組み込みが一切出来ないという新たな問題が発生しました。
(クリックで拡大)
– 新たな解決策:発想の転換、即時削除ではなく即時更新
そこで、インスタントパージではなく少しアプローチを変えてみました。”即時削除”とは真逆の”即時更新”という発想です。これが大正解でした。
お客様ご利用のフォーラムアプリパッケージできちんと304・200の出し分け挙動が実行されていましたので、この設定コード書くだけで難なく動的コンテンツのCDN化が完了しました。
こちらが使っていただいたコードです。
CDNの機能設定はJSONコード+正規表現で記述しますのでフレキシブルな対応が可能です。
(クリックで拡大)
PHPなど動的コンテンツをつかさどる言語でも少々手を加えると304・200の出し分け挙動は実現可能なケースもありますのでぜひ選択肢の1つとして覚えておいてください。
ここで:
-インスタントパージというのは:更新時にAPIでのキャッシュ削除コールが発生するように組込みキャッシュを削除してしまうのですが、APIコールの負荷が懸念される場合があります。
これに対して:
-リアルタイムキャッシュコントロールとして、この機能では常に更新確認のため、/forum/detail.phpのみスモールサイズヘッダのみサーバ側に投げつけレスポンスコード戻りが 304(更新無し)、200(更新あり)であるか読み取りキャッシュを更新させる、というごくシンプルなもので組込みをしています。
カスタマイズ可能な柔軟性の高いサービス力と技術力
CDNetowkrsは、お客様の環境に即したCDNの導入を実現するために、カスタマイズ可能な柔軟性の高いサービス力と技術力で、お客様のご要望に可能な限りお応えしています。パッケージ化された商品では対応しきれない様々なお困りごとにも、経験のある担当者が柔軟に対応し、解決策を見つけ出す技術力を備えているため、安心してお任せいただけます。
またCDNetworksでは、ウェブサイトのパフォーマンステストを無償(一部有償)で提供しています。
特に海外の各拠点においてお客様のコンテンツやサービスの利用にどれくらい時間がかかっているかを客観的に計測します。また、当社サービスによってどの程度改善できるか、見込みを算出することも可能です。
>>お申込みはこちら http://engage.cdnetworks.co.jp/LP_PT
コンテンツ配信やセキュリティ対策などでお困りごとがございましたら、いつでもお気軽にご相談ください。
>>お問い合わせ http://engage.cdnetworks.co.jp/LP_CU
>>各種資料ダウンロード http://engage.cdnetworks.co.jp/LP_BR
株式会社シーディーネットワークス・ジャパン
TEL:03-5909-3373(営業部)