Home Blogs LimelightによるLayer0の発表
Applications

LimelightによるLayer0の発表

About The Author

Outline

ライムライト(現在のエドジオ)はプレミアリーグ・フットボールクラブやディズニーBYJUを含む世界最大のビデオプロパティの立ち上げと成長を支援し、現在Layer0の買収から生じる最初の新製品を提供している。 Layer0 by Limelightは、エッジロジックをアプリケーションコードに統合することで開発ワークフローを合理化し、エッジをブラウザーまで拡張することで、1秒未満のページロードを提供する。

Layer0は、ユーザーがキャッシュヒット率95%でデータを要求する前に、データをプリフェッチしてブラウザにストリーミングする

CDNの仕事は、できるだけ頻繁にできるだけユーザーに近いエッジからデータを提供することである。 驚くべきことに、20年以上前のテクノロジーにとって、今日のCDNには両方の面で改善の余地がある。 開発チームは、チームの速度を向上させ、可能な限り最速のサイトを解放するために、スタックにCDNをベイクする方法を再考しなければならない。

エッジからのデータをできるだけ頻繁に提供する

多くのウェブサイトでは、CDNは静的データのキャッシュによく使われている。 画像、CSS、javascriptなどのアセットはほとんど変化せず、アプリケーションロジックに依存しない。 ただし、動的、HTML、APIデータはほとんどキャッシュされない。 これは、このデータのキャッシュ可能性がアプリケーションのロジックに依存しており、今日のCDNは開発者のワークフローから切り離されているため、チームが使用、デバッグ、メンテナンスを行うことが困難になっているためである。

通常、開発チームはフロントエンドコード、バックエンドサーバー、データベースの「スタック」を持っており、ローカルで開発でき、本番環境に移行する前にソフトウェア開発ライフサイクル(QA、ステージングなど)を経る。 残念ながら、CDNはスタックの一部であり、このようなことは起こらない。 CDNは、サイトへの変更がライブになったときに、ソフトウェア開発プロセスの最後にのみ導入される。 これはエッジを利用してアプリケーションを高速化することには役に立たず、スタックの他の部分(フロントエンドコード、サーバーサイドコード、データベーススキーマ)ではこれを受け入れない。

サーバーコードの変更を設計しなければならなかったが、本番環境に対してしか開発できないと言われたとしたら、それはクレイジーだと思うだろう。 しかし、それがエッジに関して開発者に求めていることである。 CDN構成の変更に伴うサイト破損やオーバーヘッドのリスクが高いため、エッジは動的データでは無視される。

対照的に、Layer0では、チームは開発プロセス全体を通じてエッジロジックをテスト、レビュー、バージョン管理することができる。 つまり、チームはエッジに対してローカルで開発し、アプリケーションコードに関連付けられた動的データの高いキャッシュヒット率を保証できる。 エッジの管理は、JavaScriptベースで、パフォーマンスが高く、宣言的で、フレームワークに依存しないエッジ設定言語であるEdgeJSによってさらに簡素化されている。 EdgeJSはフロントエンドアプリケーション内に埋め込むことができ、宣言的であるため、開発者はすべてのロジックを記述するのではなく、目標を記述するだけでよい。 これにより、使用とメンテナンスが容易になる。

事実上、CDNは開発プロセスにおいて一流の市民となっている。 その結果、より多くのデータがキャッシュされ、プラットフォーム上のチームの生産性が向上する。 Universal Standardの技術責任者であるJustin Metros氏は、Layer0が人気のあるWeb開発者向けカンファレンスであるJamstack Conn 2021で開発者の俊敏性とWebサイトのパフォーマンスに貢献したことを共有した。 「Layer0のおかげで、開発者の速度が劇的に向上しました」と彼は言う。 別の開発者は、「これは私が必要としていたものであり、私がそれを望んでいることを知らなかった」と私たちに言った。 このプラットフォームは便利で表現力豊かで信頼性が高く、開発チームに愛されるCDNとなっている。

エッジからのデータを可能な限りユーザーに近い場所に提供

CDNは、エッジからのデータをできるだけ頻繁に提供することに加えて、可能な限り迅速に提供する必要がある。 (技術的には、レイテンシーを可能な限り最小にする必要があるが、この議論では、距離はレイテンシーと大まかに相関していると仮定する。 歴史的にCDNは、Points of Presence(POP)と呼ばれる地理的に分散されたキャッシュノードのセット全体でコンテンツをキャッシュする。

他のCDNと同様に、ライムライト・ネットワークスにも多くのPOPがある。 実際、世界中に135以上のPOPがあるライムライトは、POPの2番目に大きいグローバルネットワークを持っており、ユーザーの近くに存在する可能性が非常に高い。 LimelightのLayer0では、これらのPOPはCDNの平均関数を超えて、互いにデータを調整する。 POPにデータがない場合、リクエストがオリジンサーバに転送される前であっても、POPは別のPOPにインテリジェントにデータを要求する。

これがどのように役立つかを理解するために、米国の東海岸が西海岸の前に目覚める典型的な日を考えてみよう。 通常、東海岸のPOPはウォームキャッシュを取得するが、西海岸のPOPはユーザーが本格的にトラフィックを開始するまでウォームアップされない。 POP調整により、西海岸はキャッシュが温まり始めるときに東海岸のトラフィックパターンを利用することができる。

さらに、ライムライト・ネットワークスはCDNの中でもユニークであり、独自のプライベートバックボーンを運営している。 これは、トラフィックをルーティングするとき、Limelightはインターネット上の混雑した公共高速道路を使用する必要がなく、独自のプライベートネットワークを活用して、データ転送をより速く、より安全にすることができることを意味する。

それでも、こうしたネットワーキングがあれば、ユーザーにさらに近づくことが可能になり、Layer0はそれを行っている。 最新のブラウザ技術、特にサービスワーカーのおかげで、私たちのプラットフォームはユーザーのデバイス上のキャッシュを直接、プログラム的に制御できる。 Layer0は、このサービスワーカー技術を使用して、ユーザーが要求する前にブラウザにデータをストリーミングする。

この手法はしばしば予測プリフェッチと呼ばれ、一般的にいくつかの注意点がある。 特に、管理やメンテナンスが難しく、ブラウザがオリジンからより多くのデータを要求しているため、サーバに過剰なトラフィックを引き起こす可能性がある。 この余分なトラフィックはコストを増加させ、さらに悪いことにオリジンサーバを停止させる可能性がある。 しかし、Layer0の統合プリフェッチは、予測されたトラフィックよりもユーザートラフィックを優先し、EdgeJSの設定を理解する。 これにより、データがPOPからのみストリーミングされ、オリジンサーバーに追加の負荷がかからないことが保証される。

Layer0のエッジプラットフォームでサイトをより良く、より速く、より強力に構築

これらすべてのテクノロジーが統合されると、ネットワークの帯域幅が無限になり、レイテンシがゼロになるようになる。 動的データはPOPでキャッシュされるだけでなく、ユーザーが要求する前にデバイス上で利用可能になる。 ページの読み込みは瞬時に、400ミリ秒という瞬きの速さである。 この速度は種類の違いであり、程度ではない。

eコマースWebサイトでは、トラフィックと収益が増加し、直帰率が低下する

ファッション小売業者のShoe CarnivalUniversal StandardAkira’sは、Layer0のページロードをそれぞれ92 %、91 %、71%改善し、顧客はその違いを感じることができる。 パフォーマンスの向上により、お客様はより多くの製品を購入できる。 Shoe Carnivalは40%の収益を増加させ、AKIRAはオーガニックトラフィックを30%増加させ、Universal Standardは直帰率を40%下げた。 Sharper ImageのCOOであるSam Grossmanは、「Layer0のおかげで、誰もが私たちのサイトがどれほど高速であるかについてコメントしている」と語った。

これらすべての作業を独立して行うことは困難であり、それを大規模に維持することはさらに困難である場合もある。 LimelightのLayer0は、チームの生産性とページ速度の劇的な改善をすべてのウェブサイト、特に大規模で動的なデータを持つウェブサイトに提供するために作成された。 加えて、現代のフレームワーク上のサイトでは、EdgeJSはReact、Angular、Vue、Next.js、Nuxt.jsのようなフレームワークとの組み込みの統合を持っており、Layer0プラットフォームにはServerless JavaScriptを含むヘッドレスにするために必要なものがすべて含まれている。 これにより、大規模な動的ウェブサイトサイトは、以前は静的ウェブサイトでしか利用できなかったJamstackアーキテクチャの開発者の生産性、セキュリティ、パフォーマンスの利点を利用できるようになる。

docs.edg.ioの開発者向けドキュメントをチェックし、https://edgio.app/signupで完全に無料でプラットフォームをテストドライブすることができる。