web-dev-qa-db-ja.com

コンポーネントを分割するドメインの数は?

ドメイン間でコンポーネントを分割する が並列ダウンロードを最大化し、Cookieのない静的コンテンツドメインを有効にする方法を理解していますが、各ドメインルックアップに時間がかかるため、使用するドメインの最適数?

10
theotherreceive

私の推奨事項は、比較的単純なサイトでは、1つの「静的コンテンツ」ドメインで十分であることです。 DNSルックアップはキャッシュする必要があるため、そのサーバーとの最初の接続にのみ影響しますが、最小限に抑える必要があります。

すべてのJavascript、CSS、および静的イメージをそこに配置して、Cookie処理のオーバーヘッドを削減し、それを別の物理サーバーにオフロードするオプションを提供できます。複数の人気のある関連サイト(スタックオーバーフロー、サーバーフォールトなど)を実行している場合、それらすべての間で静的サイトを共有できます(sstatic.netなど)。

もちろん、より多くのドメインが適切な場合もあります(たとえば、写真ホスティングサイトが別の別のドメインに写真を提供している場合があります)。

8
Mark Hatton

マルチホストリクエストの利点がDNSセットアップコストを上回るエッジの1つのケースを考えることができます。

Googleマップスタイルの滑りやすいマップからマップタイルを提供する場合、タイルの場所をすべてが同じ基になるリソース(画像)を指している場合でも、はるかに多くのホストに事実上分散させることの利点を確認できます。これらの場合、ブラウザのキャッシュが最適に機能し、リクエストのバランスが取れるように、リソースのプロパティ(行番号と列番号のMODの組み合わせなど)に基づいて1つのホストに「アフィニティ」が設定されるようにする必要があります。任意のビュー範囲のすべてのホストにわたって。

この状況は非常に特殊化されていますが、基本的には、非標準のユースケースがある場合は必ずすべてをテストし、すべてのシナリオの未加工の数値とUX /知覚パフォーマンスの両方を含めることを忘れないでください。

2
JasonBirch