コンテンツ・デリバリー・ネットワークが登場して約20年。 そして、その主な目的は、世界中のエンドユーザーにウェブリソースをより速く提供することです。 90年代、ウェブサイトは静的な画像とテキストの集合体でした。 従来のCDNは、エンドユーザーに近いエッジサーバーにキャッシュすることで、このような静的コンテンツを高速化することに重点を置いていました。 第一世代のCDNは、数百万ドルを投じてキャッシュ・インフラを構築し、グローバルに分散された多数の接続拠点(PoP)に投資しました。 主なパフォーマンス指標は、ラストマイル・レイテンシー(接続時間)とキャッシュヒット率でした。 CDNは、キャッシュヒット率99%を達成するために、キャッシュアルゴリズムのチューニングにほとんどの時間を費やしています。 早いもので2015年。 今日の焦点は、静的なウェブサイトではなく、動的なクラウドベースのウェブアプリケーションです。 ダイナミック・データ(詳細は後述)と双方向トラフィック(ユーザー生成データ)に重きが置かれています。 CDNが今日直面している真の課題は、静的なウェブサイトを高速化するだけでなく、動的でインタラクティブなクラウドベースのウェブアプリケーションのパフォーマンスを向上させることです。 アプリケーションにはまだ静的コンテンツがありますが、アプリケーションのごく一部(静的コンテンツ)しか最適化できないレガシーCDNでは、もはや対応できません。[bctt tweet=”Can your #CDN enhance the performance of dynamic web applications?”]動的コンテンツについて動的コンテンツとは、ウェブサーバ上で事前に作成・保存できないコンテンツのことです。 このようなコンテンツはリアルタイムで生成される必要があり、常にその場で更新されます。 これにより、従来のキャッシュ・ソリューションは時代遅れになりました。 興味深い注意点は、動的コンテンツにも “共有 “と “パーソナライズ “の2種類があるということです。 共有されたダイナミックコンテンツの例としては、数秒ごとに更新される(リアルタイムに見える)株式市場のウェブチャートがあります。 共有ダイナミックコンテンツはキャッシュ可能ですが、TTL(Time to Live)が非常に小さいため、キャッシュヒット率が低下するという副作用があります。 ほとんどのレガシーCDNは、キャッシュ率が90%を下回ると汗をかきます。 キャッシュヒット率が低くなると、パフォーマンスが著しく低下します。 もうひとつのダイナミック・コンテンツは、業界でパーソナライズド・ダイナミック・コンテンツと呼ばれているものです。 例えば、銀行の明細書やショッピングカートです。 このようなコンテンツはキャッシュできません。 すべてのリクエストはオリジンサーバーに戻る必要があります。 私の考えでは、パーソナライズされたダイナミックコンテンツこそが真のダイナミックコンテンツです。 キャッシュ可能な動的コンテンツは矛盾しています。 共有ダイナミックコンテンツがレガシーCDNベンダーに汗をかかせるなら、パーソナライズされたダイナミックコンテンツはベンダーをひっくり返します。 [bctt tweet=”Shared dynamic content causes legacy #CDN vendors break into a sweat”] パズルの3つ目のピースは、双方向のコンテンツです。 これには、ウェブサイト上のフォームへの入力、レビューサイトでのコメント、eコマースポータルでのショッピングなど、あらゆる種類のユーザー生成コンテンツ/アップロードが含まれます。 レガシーCDNはPOSTの概念を理解していません。ダイナミックコンテンツを高速化するために必要なこと[bctt tweet=”Next generation #CDNs need to be built from ground up to accelerate dynamic content.”] 次世代CDNは、ダイナミックコンテンツを高速化するために一から構築する必要があります。 既存のCDNが取っているアプローチは、レガシーなキャッシング・プラットフォームに「キャッシュ可能なダイナミック・コンテンツ・アクセラレーション」機能をボルトオンするというもので、実際には選択肢にはなりません。 次世代CDNは、次のことができる必要があります:
- パーソナライズされた動的コンテンツの処理
- 共有ダイナミックコンテンツのパフォーマンスを大幅に低下させることなく、低いキャッシュヒット率に対応
- ダウンロードとアップロードの両方で、安定した一貫性のあるパフォーマンスと高速化を提供します。
- オンザフライでの圧縮
- 静的コンテンツに優れたパフォーマンスを提供します(すべてのWebアプリケーションには、静的でキャッシュ可能なコンテンツがあります)。
- ボリュームの大きいサイトが、ダイナミック・ウェブ・アプリケーションからのボリュームの小さいオブジェクトのキャッシュ退避の原因にならないようにします。
- エンドツーエンドの持続的接続を効率的に処理
理想的なダイナミック・ウェブ高速化ソリューションには、トラフィックがインターネット上の混雑を回避できるように、すべてのPOPを接続する安定したプライベートネットワークが必要です。バイヤーとして見るべきポイント 長年にわたり、CDNはキャッシュ可能な単一の画像ファイルのダウンロードに関するパフォーマンステストを得意としており、ベンダーごとのレスポンスタイムの違いを見るには電子顕微鏡が必要なほどです。 しかし、今日のウェブアプリケーションにとって重要なのは、エッジサーバーから静的にキャッシュされた画像を1つダウンロードするのにかかる時間ではなく、完全なトランザクションのエンドツーエンドのパフォーマンスです。 CDNベンダーを決定する前に、いくつかの複雑なユーザーインタラクションがあるページから、エッジサーバーから単一のキャッシュ画像をダウンロードするのにかかる時間ではなく、完全なトランザクションにかかる時間の改善を測定することを確認してください。 また、企業の購買担当者は、CDNプロバイダーを評価する前にコンテンツの性質を評価し、ニーズに最適なものを決定する必要があります。 静的コンテンツ配信はコモディティ化した市場です。 しかし、プレミアム・エンタープライズ・コンテンツやパーソナライズされたダイナミック・コンテンツをターボチャージできるソリューションを探しているのであれば、注目すべきベンダーのリストは非常に不足しています。 –Vikas Garg, Senior Vice President of Engineering & Operationsこの記事は、CIO ReviewのCDN特別版に掲載されたものです:エンタープライズソリューションのナビゲーター