Velocity 最終日でした。
オープニングキーノートのあと、Google の Mayer 氏による「In Search of… A better, faster, stronger Web」というタイトルで Google で行ったさまざまな施策について紹介。資料は、こちら。
- デフォルトの検索結果の表示件数が 10 件になっていることをあげて、30 件すると 0.9 秒かかってしまうのに対して 10 件の場合 0.4 秒で済む
- Google Reader の高速化について紹介、高速化したことでアクティブユーザが増えた
- Google の検索結果に表示される Google Checkout のアイコン表示の高速化について紹介、アイコンは画像ではなく table タグで実現している(日本からアイコンが表示されない)、その結果 2% 表示スピードが向上した
- Google News の高速化について紹介
- Google Maps の高速化について紹介、12% のユーザは遅い接続だったことに注目して画像を圧縮してさらに、プログレッシブロードディングすることで 2-3 倍高速になった
- Google が公開している高速化のための設計を紹介、Google Code で公開されている
- 雑誌のようにウェブも素早く閲覧したい
講演が終わったあと、Mayer 氏のまわりはものすごい人だかりでした。
さまざまなウェブ用のパフォーマンスツールがたくさん紹介された。Pagetest、HTTPWatch、YSlow、VRTA、Firebug、と豪華な共演だった。
Pagetest は、URL を入力して接続元のロケーションを選択して、そのときのパフォーマンスをみることができる。無料で使えるので、使ってみたほうが分かりやすいと思う。
HTTPWatch は、IE と Firefox 向けのプラグインで、HTTP のさまざまな情報の閲覧(POST データなど)や、ネットワークレベルでのタイムチャート(DNS 解決にどのくら時間がかかったなど)を表示することができる。機能は、このページにまとまっている。ベーシック版は無料で使えることができて、プロフェッショナル版は有料になっている。それぞれの比較は、このページにまとまっている。
YSlow は、2.0 の新機能について紹介。
VRTA は、Visual Round Trip Analyzer の略で、ウェブのパフォーマンスを計測できる Windows アプリケーション。
Firebug は、これから登場する 1.4 について紹介。
World’s Simplest Latency Simulator
Aptimize のサービスについて紹介。
High Performance at Massive Scale – Lessons Learned at Facebook
Facebook の Johnson 氏による Facebook での貴重な体験を紹介。とても貴重な情報のためか、このセッションは立ち見がでるほどの大盛況ぶりだった。
- Facebook のアーキテクチャーは、ロードバランサー、ウェブサーバ、Memcached サーバ、データベースサーバ、という構成
- Memcahed サーバの比率がとても高いという印象をうけた
- 学んだことのまとめとして、キャッシュはとても高速、似たデータは計算してなるべく同じサーバへ格納する、1台から4台くらいの小さなクラスターを使う、ということでした
なり抽象度が高い講演であったと思います、動画が公開してほしいセッションの一つです。
Drizzle: Scaling for the Clouds
Drizzle の講演でした。Drizzle の紹介についてでした。紹介中、Drizzle は C++ で書かれていますが、boost を使っていないか?という質問がありました。回答は、OSX で動作させたい、パッケージングが大変などの理由から使っていないということでした。
Zawodny 氏の講演でした。第一日目の BOF でのフィードバックの内容でした。第一日目に BOF があったとは気がつきませんでした。。。
- インデックスについて、多すぎるインデックスは自分を締めることになる
- MySQL のクエリーキャッシュは使用しない
- マルチコアの世界ではレプリケーションの問題が発生する、なぜならレプリケーションはシングルスレッドでやっているため
- メモリを多く載せる
- XtraDB あるいは MySQL 5.4 を使用することで、パフォーマンス向上が期待できる
- 成長し続けるデータに対する計画をたける
- よく発行されるクエリーや遅いクエリーに重点をおいてチューニングする
ほとんど第一日目の BOF からの内容だったので、BOF に参加していなかったので話が理解できなかったです。
Frontend Performance Engineering in Facebook
Facebook エンジニアの Wei 氏とJiang 氏による Facebook のおもにフロントエンドのパフォーマンス向上施策について紹介でした。
- ajaxification という施策で、ページのロードスピードが 40-50% 向上した
- Facebook のユーザは、ブラウザの戻る/進むボタンを多用して、3から4ページごとにホームに戻るという行動をとるユーザが多いとのこと
- この特性を利用して、ページキャッシュを多用するようにしたところ、3 〜 4 倍高速になったとのこと
- CSS Sprite Image を使っているが、すべてのイメージをまとめるのでなくて、ページごとによく組み合わせのあるイメージのみをまとめて、転送効率をよくしている
展開が速すぎてまとめきれなかったので、資料の公開が待ち遠しいセッションの一つです。
Creating Instant Response Time Predictions with neXpert
neXpert というツールの紹介。
- neXpert は、Fiddler のプラグイン
- Fiddler は、Windows アプリケーションで、サーバ/クライアント間のHTTP(s) のトラフィックのログをとることができるツール
- Fiddler は、フリーウェア
Native CPU Performance in the Browser with Google Native Client
Google の chen 氏による Google Native Client の紹介。Google I/O 2009 でも紹介されていた技術ですね。
- Native Client は、ウェブアプリケーション上で x86 のネイティブコード(C/C++など)が動作させることができる技術
- object タグで指定して、拡張子は nexe になっていた
- プロジェクトのゴールは、JavaScript と同じくらい安全にネイティブコードを動作させるとのこと
最後の講演として、Velocity の chairman であり、YSlow の作者でもある Google の Souders 氏によるパフォーマンスの状態についての講演。おもに Firebug, YSlow, Page Speed, HttpWatch, PageTest, VRTA, and neXpert などのウェブのパフォーマンスを計測することができるツールがたくさん登場してきたというまとめのみ。
次のエントリで、「写真で振り返る Velocity」と題して個人的な所感をまとめておこうと思います。
Tags: velocityconf






