ウェブを速くするためにGoogleがやっていること--Make the Web Faster

Jxck
2013-09-10 14:42:00
  • このエントリーをはてなブックマークに追加

 今回から数回にわたって、Googleが進める"Make the Web Faster" というプロジェクト(プロジェクト)について、プロジェクトにリストされたGoogleのプロダクトや仕様提案、ベストプラクティスなどを連載形式で紹介します。

 Make the Web Faster

 "Make the Web Faster" のページには、文字通り Google が 「ウェブを速くするため」に開発したプロダクトや、新しい仕様の提案、ベストプラクティスなどがリストされています。

 例えば以下のようなものがあります。

  • WebP
  • TCP Fast Open
  • Google DNS
  • Google Hosted Libraries
  • Page Speed
  • SPDY
  • etc…

Make the Web Faster

 この連載では、そこから特に重要なものを、筆者の気の向いた順に紹介していきます。今回は、これら “Make the Web Faster" を紹介するにあたり、共通して押さえておくべき基本知識について紹介します。

ウェブというターゲット

 プロジェクトにはさまざまな手法がリストされていますが、全てに共通するのは「Webの高速化」を目的としている点です。対象がウェブであるために、共通するチューニングの観点としては大きく「ネットワーク」と「アプリケーション」の2つが考えられます。

ネットワークのチューニング

 ウェブはネットワークへのアクセスを伴います。ネットワークを効率よく使うことは、パフォーマンスの改善を試みる上で非常に重要です。

 まずは、一番簡単な原則としてこれだけは覚えておいてください。

なるべく小さく

 ウェブは、HTML、CSS、JS、画像、動画などのデータをネットワーク経由でクライアントに届けています。このデータが小さければ小さいほど、速く届けることができます。特に画像や動画はサイズが大きくなりがちです。送る上でなるべく小さくするにはどうするか、ここで圧縮などの技術が有効になります。

なるべく少なく

 ネットワークアクセスの回数が増えるほどオーバーヘッドが大きくなるため、極力少ない方が望ましいです。アクセス回数を減らす工夫や、プロトコル仕様レベルの改善などがあります。

なるべく近く

 ネットは世界の裏側でも簡単にデータを届けることができますが、遠ければそれだけ遅くなってしまいます。しかし、コンテンツの種類によっては、ユーザーに近いところに配置するなど、工夫できるところがあります。

 他にも HTTP と TCP についての基本的な知識が必要な回もあります。そうした場合は、3 Minutes Networking や、現在執筆が進んでいる High Performance Browser Networking などが参考になるでしょう。(この本はすでにHTTP2.0など最新のトピックも扱っています。)

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]