ウェブ アプリケーションの範囲、目標、機能は拡大し続けています。これは良いことです。しかし、よりリッチなウェブへの絶え間ない進歩は、別のトレンドを推進しています。各アプリケーションによってダウンロードされるデータの量は、着実に増加し続けています。優れたパフォーマンスを実現するには、1 バイト単位で配信を最適化する必要があります。
モダンなウェブ アプリケーションとはどのようなものでしょうか。HTTP Archive は、この疑問に答えるのに役立ちます。このプロジェクトでは、最も人気のあるサイト(Alexa の上位 100 万サイトのリストから 30 万以上)を定期的にクロールし、各サイトのリソース数、コンテンツ タイプ、その他のメタデータに関する分析を記録して集計することで、ウェブの構築方法を追跡しています。

上記のデータは、2013 年 1 月から 2014 年 1 月までのウェブ上の人気サイトのダウンロード バイト数の増加傾向を示しています。もちろん、すべてのサイトが同じ速度で成長するわけでも、同じ量のデータを必要とするわけでもありません。そのため、分布内の異なる分位数(50 番目(中央値)、75 番目、90 番目)をハイライト表示しています。
2014 年初頭の平均的なサイトは、75 件のリクエストで構成され、合計転送バイト数は 1, 054 KB に達しています。バイト数(およびリクエスト数)は、前年を通じて着実に増加しています。これ自体はそれほど驚くことではありませんが、パフォーマンスに重要な影響を及ぼします。インターネットの速度は向上していますが、国によって速度の向上率は異なり、多くのユーザーは依然としてデータ通信量の上限や高額な従量制プランの対象となっています(特にモバイル)。
デスクトップ アプリケーションとは異なり、ウェブ アプリケーションでは個別のインストール プロセスは必要ありません。URL を入力すればすぐに使用できます。これがウェブの重要な特徴です。しかし、これを実現するには、数十、場合によっては数百のさまざまなリソースを取得しなければならないことがよくあります。これらのリソースはすべて、合計で数メガバイトのデータになる可能性があり、数百ミリ秒以内に集約して、目指しているインスタント ウェブ エクスペリエンスを促進する必要があります。
これらの要件を考慮して、瞬時にウェブ エクスペリエンスを実現することは容易ではありません。そのため、コンテンツの効率を最適化することが重要です。不要なダウンロードを排除し、さまざまな圧縮技術を使用して各リソースの転送エンコードを最適化し、可能な限りキャッシュを活用して重複するダウンロードを排除します。