タグ

ブックマーク / takehora.hatenadiary.jp (2)

  • 「推測するな、計測せよ」のWebパフォーマンスにおける真の意味 - Webパフォーマンスについて

    ソフトウェア工学で著名なロバート・C・パイク氏のCプログラミングに関する覚書というものがあります。 ルール1: プログラムがどこで時間を消費することになるか知ることはできない。ボトルネックは驚くべき箇所で起こるものである。したがって、どこがボトルネックなのかをはっきりさせるまでは、推測を行ったり、スピードハックをしてはならない。 ルール2: 計測すべし。計測するまでは速度のための調整をしてはならない。コードの一部が残りを圧倒しないのであれば、なおさらである。 ルール3: 凝った(Fancy)アルゴリズムは nが小さいときには遅く、 nはしばしば小さい。凝ったアルゴリズムは大きな定数を持っている。nが頻繁に大きくなることがわかっていないなら、凝ってはいけない(nが大きくなるときでさえ、ルール2が最初に適用される)。 ルール4: 凝ったアルゴリズムはシンプルなそれよりバグを含みやすく、実装する

    「推測するな、計測せよ」のWebパフォーマンスにおける真の意味 - Webパフォーマンスについて
  • HTTP/2が速いという幻想 - Webパフォーマンスについて

    難しい話じゃないです。 皆さん、ご自分でChrome Developer Toolで簡単に確認できますから、やってみて下さい。 このブログでも、過去に統計分析をした結果は掲載したんですが、「盲信」はそうそう簡単には消えないようでして… takehora.hatenadiary.jp takehora.hatenadiary.jp 以下の図は、Chrome 63.0.3239.108での結果です。 CDNにFastlyでもAWS CloudFrontでも、どのCDNを使って実験して頂いても結構です。 CDNを使わずに、Webサーバ単体でも結構です。 同様の結果になります。 どちらもHTTPS通信です。 どちらも同じオリジン、同じファイル構成です。 HTTP/1.1は、Keep-Alive設定が入っています。 HTTP/1.1での配信 … Load Event 70ms HTTP/2での配信

    HTTP/2が速いという幻想 - Webパフォーマンスについて
  • 1