ちょっと興味があるテーマだったので、Chrome Tech Talk Night #5 に参加してきました。(2013/1/31)

そのときのメモです。 会場はGoogle Japan。

スピーカーは Ilya Grigorik さんで、Performance Enthusiast と紹介されていました。

話は2つに分かれていて、前半はpagespeedを使ったサーバサイドでの高速化の話で、後半はchrome devtoolの説明と使い方という、クライアント側のデータから高速化を考える話でした。

詳しい内容は、発表のスライドや動画を見るのがよいと思います。

前半のスライド

後半のスライド

動画と、まとまってそうなレポート

また、関連する話がちょうど同じ日にpostされていたので、それも合わせて読むといいかもです。

pagespeed

前半は、pagespeedの紹介と、Apacheやnginxでどんな感じで使えるのか、またpagespeedの中ではどんなことをやっているのか、という話と、少しSPDYの話がありました。

Apacheにはmodpagespeed、nginxには ngxpagespeed が既にあって、nginxの方はまだalphaだけど使えます。pagespeedにはいくつかfilterがあって、安全に使えるCore filterと、サイトによっては少し問題が出るかもしれないOptionalなfilterがあります。filterをテストしながらOn/Offしていけば簡単に高速化ができます。
それぞれのfilterは、例えば画像のリサイズして圧縮したり、複数のCSSを1つにまとめたり、ということをpagespeedが勝手に良い感じにやってくれます。

SPDYの紹介も少しあって、HTTP2.0もSPDYに近いものになるんじゃないか、ということでした。
HTTP2.0には3つのpointがあって

  1. Make things better
  2. 今のHTTP1.1にはよくない部分があって、みんないろいろな工夫をしてる。HTTP2.0はそこが改善される

  3. Build on HTTP1.1

  4. 今のHTTP1.1と互換性を持って、今の仕組みの上で動く必要がある

  5. Be extensuble

  6. 将来的な拡張性も必要だよね

というような話でした。 Apache向けにはmod-spdyを使えばSPDY対応できます。

pagespeedの名前は知っていたけど、中でどんなことをやっているのか、という話を聞けて勉強になりました。ちょっとngx_pagespeedを試してみようと思います。

Devtools

後半は、Devtoolはどんなことができるのか、network的なperformanceだけでなくrenderingのperformanceも見れること、いろいろなデータがexportできること、androidにつないでmobile 向けのdebugもできること、どんなカスタマイズができるか、などの話がありました。

DevTools自体がWeb pageなので、いろいろカスタマイズしたりDevToolからのデータを取得したり、ということができるようになっているらしいです。

DevToolsも少し使ったことあるくらいであまり知らなかったので、いろいろな機能が聞けてよかったです。あとは、chrome://net-internalsでSPDYの情報が見れるとか、そういったDevTools以外のchromeの機能についても聞けました。