web-dev-qa-db-ja.com

同じサーバーでホストされているサブドメイン上の画像—同時ダウンロードは増加しますか? (CDN)

ブラウザでは、同じドメインから 限られた数の同時ファイル のみをダウンロードできます。

画像のサブドメイン(基本的には コンテンツ配信ネットワークとしてと同じWebホスティングサーバーでファイルの数を増やします同時にダウンロードできますか?

(そして、ページの読み込み時間を改善しますか?)


この例を考えてみましょう:

www.example.com
img.example.com

imgサブドメインは、wwwドメインと同じWebサーバー(同じIPと場所)でホストされます。

3
Baumr

はい、もしくは、いいえ。あなたの仮定は正しく、複数のドメインからリソースが提供される場合、ブラウザにより多くのリソースを並行してロードできるということです。ただし、考慮すべき2つのケースがあります。

  1. 現在、サーバーは最大容量でサービスを提供していません。この場合、同時にサービスを提供するリクエストの数が多いほど良いでしょう。ダウンロード帯域幅がまだ上限に達していない訪問者には、ページ読み込み時間が短縮されます。

  2. サーバーは最大容量でサービスを提供しています。変更はほとんどありません。リクエストの取得と処理のオーバーヘッドが原因で速度が低下する可能性もあります。この場合の速度を上げる方法は、サーバーをアップグレードするか、実際のCDNネットワークを使用することです。

サーバーのパフォーマンスログを見て、どちらが該当するかを確認する必要があります。 CPU使用率は、一般的なケースで画像がキャッシュされると予想される場合に適切な指標です(ほとんど同じ画像を何度も繰り返し提供します)。ディスクの使用量は、画像セットが非常に頻繁にキャッシュされないほど大きい場合に優れた指標です(ほとんどの個人的なギャラリーサイトのように、異なるユーザーに異なる画像を提供します)。

4
Itai

サブドメインを使用して簡単に答えると、並列ダウンロードが可能になり、一度に送受信されるフェッチの量を改善できます。また、有効期限が切れるサブドメインをCookieなしに設定して、CDNの使用をさらにエミュレートできます。

ただし、次のことに注意してください。

  • CDNは世界中のファイルをミラーリングし、世界中の人々のためにサイトを高速化します。
  • CDNは非常に安価です。
  • 優れたCDNは、需要に合わせて速度を落とすことはありません。
  • サーバーがすべてのクライアント要求を提供できる間、CDNはサーバーリソースを使い果たしません。
  • メインサイトがハッキングされた場合、CDNを使用するとセキュリティのレイヤーが追加されます。APIキーを公開しないと仮定します。
  • CDNは、多くのファンキーなことを行うことができるAPIベースの機能も提供します。
  • 1はファイルが世界中にミラーリングされ、2はフェイルプルーフRAIDセットアップを使用しますが、独自のサーバーはミラーリングしないため、CDNではデータ損失は実際には発生しません。
2
Simon Hayter