テクニックではなく、今、本気で取り組むべきWebパフォーマンス

概要

http://events.html5j.org/conference/2017/9/session/#e5

資料

パフォーマンスの大切さについての説得材料

  • お金の話をする
  • 競合他社の話をする
  • Webパフォーマンス計測ツール
    Dynatrace / Catchpoint Systems / SpeedCurve

  • 欧米だと普通に定常計測します

    • Synthetic Monitoring(合成計測)がメイン
    • 統計的品質管理で重要なフィッシャー三原則に基づく計測
    • お金がかかる…ISPマーケットシェア、インターネット人口分布に基づく計測機器の設置
    • Actinable Data(実行可能データ)の取得
      • 改善に結びつく、ノイズが少ないデータの取得

なぜ、計測するのか

  • Webサイト運用の基本だから
  • インターネットの中は変わり続ける
  • 昨今のWebページには、サードパーティが大量に入っている
  • 品質管理は、利益の源泉
    • ストレートに言うと、品質管理をちゃんとやると儲かる
  • 海外のWebサービスやSaaSだと、普通に、年間数千万〜1億円を計測サービスに使う

民法債権法改正

  • 媒介、請負についても、品質保証が必須
  • Webサイトの制作請負…品質テストしてから納入しないと重過失
  • SaaS、Webサービス… SLA(Service Level Agreement)を明示 → 満たしていなければ返金

Webサイトの三大品質

  • アクセシビリティ
  • セキュリティ
  • パフォーマンス

DevOps

  • Development
  • Operations
  • Quality Assurance

テクニックではない高速化の基本

一旦、テクニックを忘れる

  • 遅延の原因さえわかれば、解決に至る道は複数ある。その中から最適なものをひとつだけ選べば良い

思い込みをやめる

まずは、計測

第一フェーズ - 全数調査

第二フェーズ - 改善のフェーズをくるくる回す

高速化とは

  • 高速化とは、本質的には、計算量を減らすこと
  • アムダールの法則
  • ノーフリーランチ定理

Google Pagespeed Insights の問題

レンダリング関係については問題解決のヒントとなるが、レンダリングはWebパフォーマンス問題の一部でしかない

高速化の3つの方策

追加

  • 計算リソースの追加(CPU, Network関連)

交換

  • 計算量のより少ない方法へ

削除

  • 計算量を減らす

高速化の原則

  • 80:20 の法則
    • 全体の8割の遅延を占める2割の原因を解決する
  • まずは秒の世界の改善、そしてミリ秒の世界の改善

5Gすごい

  • 今までやってたこと全部無駄になります
  • Mobile Edge Computing