SlideShare une entreprise Scribd logo
1  sur  89
Télécharger pour lire hors ligne
ウェブに関わる人なら知っておきたい
パフォーマンスの基礎とこれから
by ふろしき
2015.03.20GREE MiniTechTalk
エンジニアをやっています川田です。Webのパフォーマンス関連のことで、いろいろと活動しています
ウェブエンジニア
・Software Design(技術評論社)
 2014年5-7月号
 「Web標準技術ではじめる
 Webパフォーマンス改善」 他
・html5j パフォーマンス部
・日本Cordovaユーザー会
・Microsoft MVP (Internet Explorer)
・W3C Web-perf WG 他
ふろしき (川田 寛)
Published Community
4年前、とある開発プロジェクトで
フロントエンドの性能劣化にかなり苦しめられ
以来、Webのパフォーマンス技術を追っています
2.パフォーマンスの計測
3.パフォーマンスの改善
4. 最後に
アジェンダ
ギクッ
Webパフォーマンスの計測とちょっとした統計学、改善手法、最近の標準化の動向の話をします
1.ウェブの仕組み
パフォーマンスは企画段階から検討が必要で、運用時にも仕込みが必要です。しかし、今日はそんな話はしません
お話しないこと
1. 多重化と設計(見積もり)みたいなこと
2. 負荷テストとその手法みたいなこと
3. キャパシティプランニング(運用)みたいなこと
お伝えしたい人
・Webインフラエンジニア
・Webアプリ開発者
・フロントエンドエンジニア
・技術的なことに興味があるWebデザイナ
今日は、Web標準なお話をします!!!
1. ウェブの仕組み
インターネットはなぜ遅いのか?
インターネットは、信頼性や効率を犠牲に、拡張性の高さを優先した、”IP”という技術を利用しています
R
R
R
R
R
クライアント
(ブラウザ)
サーバ
(Webサーバ)
健全な
ネットワーク
悪い
ネットワーク
新品な
ネットワーク
オンボロな
ネットワーク
赤ん坊
ツギハギな
ネットワーク
おーい、おまえら…
ちゃんとパケット
送ってくれよ(怒)
まだ?
捨てられたパケット
ポイッ
ばぶー
来ないね
もう限界や…
知ッテイル
モウ少シマテ
偽物なら
あるで?
ここ
ほんと暇だな
インターネットはなぜ遅いのか?
IPのデメリットを埋める仕組み”TCP”は、信頼性を上げるために”ack”と呼ばれるパケットを返答します
クライアント サーバ
ネットワークA
R
ネットワークB
TCPデータ
TCPデータ
ack
ack
TCPデータ
TCPデータ
きたぞー
送ったぞー
TCPデータ
インターネットはなぜ遅いのか?
クライアント サーバ
ネットワークA
R R R
ネットワークB ネットワークC ネットワークD
2点間の距離が遠い場合は、ackの応答に時間がかかり、ネットワークリソースを十分に活かしきれません
TCPデータ
TCPデータ
TCPデータ
使い切れていない
ネットワークリソース
ack
ack
ack
ack
きたぞー
送ったぞー
インターネットはなぜ遅いのか?
海外にアクセスしようものなら、ackの応答時間(Round Trip Time)に10倍以上もの差が出ることもしばしば
US カリフォルニア州
166ミリ秒15ミリ秒
yahoo.co.jp
さくら
インターネット
RTT= RTT=
大阪
東京
KDDI
Softbank
Telecom
yahoo.com
海底ケーブル
(恐らくJapan-US経由)
R
R
R
R
R
R
R
R
R
R
R
R
R
R R
R
R
R
R
R
R
R
R
R
35ミリ秒
100ミリ秒
6ミリ秒 6ミリ秒
6ミリ秒 3ミリ秒
一定タイミングごと(一様乱数で少しズラした)にtracerouteを実行し、1週間分のRTTの平均値。
※各ノードについて、L2トンネリングは配慮しないものとする。
25ミリ秒
インターネットはなぜ遅いのか?
今回、海底の光ケーブルは、2,100kmを
約100ミリ秒でRound Tripしていたが…
真空での光の速さが約30万km/秒なのに対して、今回の海底ケーブルは4.2万km/秒。もはや、人類は限界なのです
真空空間の光は、約30,0000kmを
100ミリ秒で進む。つまり…
1 7:
通信技術が革新しても桁は上がらない時代
上位レイヤーは無駄を排除する努力をすべきだ!!
TCPデータ
インターネットはなぜ遅いのか?
クライアント サーバ
ネットワークA
R R R
ネットワークB ネットワークC ネットワークD
RTの問題を緩和しようと、輻輳制御の煩雑化を犠牲に、ウィンドウサイズや遅延ackなどいろいろ改善を進めましたが
TCPデータ
TCPデータ
TCPデータ
ack
ack
ack
まとめて
送ったぞー
全部
きたぞー
ウィンドウ
サイズ
TCPデータ
もう次
いくからな?
つかおい!
待てって…
TCPデータ
TCPデータ
インターネットはなぜ遅いのか?
クライアント サーバ
ネットワークA
R R R
ネットワークB ネットワークC ネットワークD
TCP接続開始時はいまのところ、RTTがそのままクリティカルパスとなり改善されていません
いいよー
TCP接続
するよ?
じゃ
開始して!
syn
syn
syn
syn
ack
ack
ack
ack
ack
ack
ack
ack
TCPデータ
TCPデータ
※注:APPENDIX-1も参考のこと
ウェブはなぜ遅いのか?
Webページの表示には、名前解決にSSL証明書取得など、様々なRT的処理がクリティカルパスになっていますが
公開鍵証明書
名前解決
リダイレクト
HTMLファイル本体
ブラウザ
CA
DNS
リダイレクトサーバ
HTTPサーバ
ウェブはなぜ遅いのか?
多くはチェーンが可能であり、実態としては2つ以上のサーバが関わることも少なくありません
公開鍵証明書
名前解決
リダイレクト
HTMLファイル本体
ブラウザ
CAチェーン
DNSのチェーン
リダイレクトサーバのチェーン
HTTPサーバ
ウェブはなぜ遅いのか?
ブラウザ
アドネットワーク など
CDN など
JS/CSS
画像ファイル
広告関連
リソース
ソーシャル など
ソーシャル
ボタン
HTMLの解釈と描画の段階に入ると、色んなサーバにあの非効率なサーバ接続処理を大量に開始するのですが
ウェブはなぜ遅いのか?
ブラウザ
アドネットワーク など
CDN など
当然、リソースの全てに、SSLや名前解決、リダイレクトが絡むわけで
JS/CSS
画像ファイル
広告関連
リソース
ソーシャル など
ソーシャル
ボタン
ウェブはなぜ遅いのか?
ブラウザ
アドネットワーク など
CDN など
さらにチェーンできるとなると、潜在的には相当な数のサーバ接続が関わっているわけです
JS/CSS
画像ファイル
広告関連
リソース
ソーシャル など
ソーシャル
ボタン
ウェブはなぜ遅いのか?
どれぐらいのサーバ接続があるのか?サーバとの接続だけでも40オーバーが普通なので、100超えは割とよくあること
http://www.atmarkit.co.jp/
82本 44本
@ITのトップページ Qiitaの記事
http://qiita.com/nhiroki/
items/eb16b802101153352bba
First Viewアクセスで特徴的なWebページを3つほどご紹介 (2015年3月18日現在)
Pixivのイラストページ
http://www.pixiv.net/member_illust.php?
mode=medium&illust_id=49316209
108本
2回目のアクセス
17本
2回目のアクセス
11本
2回目のアクセス
127本
モバイルはなぜ遅いのか?
さらに、モバイルにおいては帯域の小ささがWebの様々な手続きを全体的に遅くし
通信リソース小さいモバイル(3G回線)において、
最初の600msは手出しできない遅延
有線と比較すると圧倒的なリソース不足、帯域が小さい
HTTP+TCP+IP
モバイルはなぜ遅いのか?
あげく、通信は全機能の中で2番目にバッテリー消費が大きいため、通常は節電のために非アクティブ化されます
Power On
モバイルの場合、ネットワークインタフェースは普段OFFになる!
接続前にONにしなくてはいけない…
※ここで言うネットワーク・インタフェースは
 Push Notificationで利用されるものとは別のもの!!
OMG :(
HTTP+TCP+IPレイヤー物理レイヤー
これでは遅くなって当然!!
Webのパフォーマンスは悪くなる宿命にあるわけですが
これでは遅くなって当然!!なのに…なのに!!
そんなこと、利用者からしてみれば、知ったこっちゃありません
2. パフォーマンスの計測
どういう状態を遅いというのか?
平均は約700ミリ秒??
…言うほど、遅くないように見えるけど?
計測するのはいいのですが、ほんの数件だけでは特徴がさっぱり見えません
・1回目:534ミリ秒
・2回目:812ミリ秒
・3回目:742ミリ秒
さっそく、計測してみた
??
どういう状態を遅いというのか?
では10件程度でしょうか?これでもまだ、全体が見えません
10PVほど収集。
件数(件)
読込時間(ミリ秒)
10回やると平均800ミリ秒超えた?
けど、そんなに遅い?
本当にこんな分布?
??
どういう状態を遅いというのか?
1,000PVほど収集すると…
ん?これ、よく見たら対数正規分布…
多くの値を使うと状況は変わります。Webの速さが、対数正規分布っぽいということに気がつきませんか?
件数(件)
読込時間(ミリ秒)
どういう状態を遅いというのか?
この分布だと少数の異常値が含まれる…
先ほどの図では見えませんでしたが、対数正規分布の場合は、少数の異常な値が交じることになります
Webページ表示時間の順位(位)
読込時間(ミリ秒)
少数の異常値速すぎ。恐らく何かエラーがある
異常に遅すぎ。恐らく何かエラーがある
どういう状態を遅いというのか?
平均値で評価するとσ(信頼性)の大きさやμ(遅さ)が見えません。ここはパーセンタイルで評価するのが一般的です
Webページ表示時間の順位(位)
50パーセンタイル → 832ミリ秒
70パーセンタイル → 1,310ミリ秒
90パーセンタイル → 3,428ミリ秒
(※50%のアクセスが832ミリ秒以下になる)
(※70%のアクセスが1,310ミリ秒以下になる)
(※90%のアクセスが3,428ミリ秒以下になる)
30パーセンタイル → 531ミリ秒
(※30%のアクセスが531ミリ秒以下になる)
パーセンタイルで遅さを評価。こ、これはッ!!!!!
30回に1度は10秒超え!?
50回に1度は30秒超え!?これが原因?
読込時間(ミリ秒)
??
…普通に速くね?
9割が3秒台だし!!
ただ、考えてみて下さい
このグラフの軸
こいつらは一体、ナニモノ?
…グラフで使っていた軸、本当に大丈夫ですか?
欲しい情報(母集団)に含まれる値を”標本”を呼びますが、それの質が低いと母集団は推測できません
↓この人はなぜ、遅いと感じたのか?
標本がなければ推測できない
仮説1) 100回に1度のとても悪いタイミングにあたり、
    その瞬間だけは確かに遅かった。
仮説2) アクセス数が多くてサーバ負荷が高いため、
    その時間帯は常に全ユーザが読み込みが遅かった。
仮説3) CSSの読み込みが遅く描画をブロックするため、
    常に遅く描画された。
特定の時間に
偏りのあるサンプルは
使い物にならない
HTML読込時間は
使いものにならない
サーバサイド・モニタリング
確実に値が取れる、環境の制約を受けにくい
ブラウザ上のイベントが見えない
トータルの速さ、JSの実行結果を含めた計測ができる
値をドロップすることがある、環境の差異が大きい
良
悪
良
悪
質の高い標本を得る手段は増えています。最近では、サーバサイドだけでなく、クライアント上でも計測ができます
サーバ上でHTTPリクエストなどをモニタリングして計測。
ブラウザ上で様々な処理をモニタリングして計測。
リアルユーザ・モニタリング
標本がなければ推測できない
リアルエンドユーザによる計測
シミュレーションによる計測
実際のユーザの置かれている状況を丸裸にできる
標本として正しいのか見極めが難しい値がある
ブラウザの機能にないところまで計測できる
単位時間あたりのPV数など、得られない値がある
良
悪
良
悪
データに乗っているノイズから解放してくれる、シミュレーションによる計測からも目が話せません
実際に運用しているサーバやユーザのブラウザ上で計測。
ブラウザの動きをシミュレートして運用中のサーバにアクセスし計測。
標本がなければ推測できない
サービスがゴマンとあるわけですが、私はオープンソースの人なのでよくわかりません!オススメ、教えてください
私が知っている範囲(知人レベル)で有償系:
無料系:
オープンソース系 Make the Web Faster
PageSpeed Insights modern.ie
Site Scan
→モバイル系
 @massieさんのところが
 もいちょっとしたら…多分
→Webサイト系
 @takehoraさんが
 代理店で販売
Yahoo! Boomerang
 →恐らく停滞
→よく目にする…
標本がなければ推測できない
よくわからないけど
対策のきっかけが欲しい!!
何から始めたらいいのかわからないようでしたら、まずは手頃なサイトスキャンに検査を委ねてみましょう
→ とりあえずのサイトスキャン
modern.ie
Site Scan
①
②
Web制作者、アプリ開発者向け
制約こそあるがMicrosoftらしい親切さがある
特徴
1. 検査項目がかなり豊富
2. 日本語対応、説明が親切
3. MS製品と相性がいい
4. モバイルとデスクトップは
  同じWebページが前提
modern.ie Site Scan
計測とかよくわからない!そういう人は、とりあえずこのサービスに頼ってみてください
Webpagetest
アプリ開発者、インフラエンジニア向け
オープンソースでGoogleのアイデアが入っている
特徴
1. 指標値がかなり豊富
2. 自前のサーバで使える
3. OSS系ブラウザが使える
ガッチガチに数値と睨めっこしたいひとは、このOSS製品がかなりオススメです
4. モバイルとデスクトップは
  別々に対応してOK
ブラウザ上でのパフォーマンス計測は
Web標準の力を必要としている!!
何から始めたらいいのかわからないようでしたら、まずは手頃なサイトスキャンに検査を委ねてみましょう本章の最後に、ブラウザのパフォーマンス計測で得られる値、指標値の標準化について説明します
ブラウザごとに値の意味が違っていたら、役に立たない!
ブラウザ上での計測
Webは、サーバ環境の統一はできてもブラウザはバラバラ。標本用途には、標準化された値が必要なケースがあります
Web標準として、計測方法や値の意味を定義
ブラウザ上での計測
例えば、Webページ読み込み時に発生する様々な事象がいつ起きたのか?これはもう標準で定義されています
ハイパーリンクのクリック。
ナビゲーションの手続き開始。
ビュー内が白くなり、
DOMの読み込みを開始。
全てのコンテンツの読み込みが完了し、
JSイベントを実行。
Navigation Start
DOM Loading
Load Event Start
ex.
1427014713416
1427014719823
+ 6,407 ms
1427014803940
+ 84,117 ms
ブラウザ上での計測
JavaScript API
開発者ツール
Web標準
”開発者ツール”と”JavaScritp API”の2箇所から、その値を確認することができます
その場で
確認したい!!
どこかに
蓄積したい!!
デバッグ用途
分析用途
旧時代的かつもっとも実用的な仕様:
Navigation Timing
2010年、IE9に実装すべくかなりの早さで仕様を固めたのがNavigation Timingです。実用的ですが、まもなく消えます
ブラウザ上での計測
Webページ遷移時のパフォーマンス
計測方法と値の定義
JavaScript APIの仕様
W3C勧告で安定しているけど
数年後には人々の記憶から失われることになる
ちなみに、雑誌でもWebでも、日本語の詳しい解説はだいたい私が頑張りました。…か、買ってくださいね(汗)
ブラウザ上での計測
仕様の詳しい説明はこちら↓ Webだとこちら↓
https://html5experts.jp/furoshiki/6242/
旧時代的かつもっとも実用的な仕様:
Navigation Timing
これからのパフォーマンス計測の標準と言えば:
Performance Timelineと…
次世代は、Performance Timelineという仕組みを通じて、様々な計測値が高精度で取得できるようになります
ブラウザ上での計測
+Navigation Timing 2
+Resource Timing
+Frame Timing
+User Timing
+Server Timing
計測対象とその仕様 精度に関する仕様
+High Resolution
 Time
+High Resolution
 Time 2
※注:APPENDIX-2も参考のこと
ここは以前まで
Navigation Timing
だった!!
ブラウザ上での計測
Chrome 41では、ちゃんとお引っ越し済みなので
少しだけ遊べる状態。
ちなみに、Chromeは41から体験できるようになりました
仕様はほとんど
固まってないけど(汗)
目玉の一つがネットワークの状態の可視化で、今もなお更に詳細化しようと検討しています
ブラウザ上での計測
1. ネットワーク周りの計測が強化された!!
ブラウザ
チェーンされたサーバたち
↑これができるように、今まさに検討中
計測
計測
計測
計測
計測
Server Timing
この仕様が発展すると、TCPのおかげで海底ケーブルをいっぱい往復するパケットたちを、妄想して楽しめるわけです
ブラウザ上での計測
1. ネットワーク周りの計測が強化された!! ↓ここを往復してる!!
Server Timing
画像ファイルやCSS/JSの読み込みも、計測値を拾えるようになりました。つい最近、実用フェーズに入ってます
ブラウザ上での計測
2. HTMLファイル以外のリソースのパフォーマンスを可視化
昨年末、ようやくFirefoxが
35で実装したので
これで使い物になりそう!!
ブラウザ
JS/CSS
画像ファイル
広告関連
リソース
ソーシャル
ボタン
計測
計測
計測
Resource Timing
画面遷移だけでなく、アニメーション的な振る舞いに対して、フレームレートを計測できるようにする予定です
ブラウザ上での計測
3. アニメーション/フレームレートも可視化する!(これから)
Frame Timing
また、速さの計測だけでなく、エラーもロギングして取得できるようにする予定です
ブラウザ上での計測
4. エラーも探れるようにする!(これから)
少数の異常値速すぎ。恐らく何かエラーがある
異常に遅すぎ。恐らく何かエラーがある
Network Error Logging
巨大なファイルのアップロードやダウンロードも、ユースケースに含めていく方針です
ブラウザ上での計測
5. 巨大ファイルのダウン/アップロードも計測する!(これから)
ブラウザ サーバ
ZIP
動画 画像
Resource Timing
Power On
モバイル固有の問題にだって、対応していく予定です
ブラウザ上での計測
6. モバイルをしっかりと捉える!(これから)
ネットワーク
インタフェースの
活性化の時間も可視化
Navigation Timing 2
ブラウザ上での計測
http://www.w3.org/wiki/Web_Performance/Publications
3. パフォーマンスの改善
HTTP1.x
HTTP1.xの時代、通信効率を上げることについて、TCP接続がネックになっていました
HTTP1.xのインフラ戦略
通信時間を短縮したい!!
・TCP接続のオーバヘッドを減らす → KeepAlive
・接続後の通信量を減らす → gzip
・既にロードしたことある場合は読み込まない → Expires
通信効率を上げたい!!
・JS/CSSファイル数を減らす → Concat
・画像ファイル数を減らす → CSS Sprite
・ファイル読込の並列性を上げる → ドメインシャーディング
TCP接続を減らそうとしつつも、一方では増やして並列性を高めようとする矛盾
ブラウザ サーバ
HTTP1.xのインフラ戦略
並列性が足りないから増やすぞ!!
オーバヘッド減らすためにまとめるぞ!!
ファイル数分、TCP接続や!!
▼
▼
▼
どうなる!?
SPDY?
HTTP/2
HTTP/2になると、接続数はもちろん減ります。時代の流れからして、必然の傾向です
ブラウザ サーバ
HTTP/2のインフラ戦略
並列性が足りないから増やすぞ!!
オーバヘッド減らすためにまとめるぞ!!
ファイル数分、TCP接続や!!
▼
▼
▼
オーバヘッドを減らすためにまとめるぞ!!
通信周りに対する問題は、HTTP/2の登場である程度解決してくれるらしいです。らしい?何が言いたいかと言うと
通信時間を短縮したい!!
・TCP接続のオーバヘッドを減らす → HTTP/2 !?
・接続後の通信量を減らす → HTTP/2 !?
・既にロードしたことある場合は読み込まない → HTTP/2 !?
通信効率を上げたい!!
・JS/CSSファイル数を減らす → HTTP/2 !?
・画像ファイル数を減らす → HTTP/2 !?
・ファイル読込の並列性を上げる → HTTP/2 !?
HTTP/2世代のインフラ戦略
…ええ、怖いですよ。
定石が変わってしまったので、1.xのインフラを2にそのまま移すのいうのは難しく、何も考えなかったら悪化します
HTTP/2世代のインフラ戦略
HTTP1.xインフラ≠HTTP/2インフラ
えっ、今SPDY/3!?
あ、はい。頑張って下さい…
もうやることなくなるの?
アプリ開発者はやることはもうなくなったのでしょうか?いえ、それがまだ残っています
アプリの特性に合わせた、パフォーマンスの改善技術というのが作られています
インフラ
アプリ
ビジネス
HTTP/2という
汎用的な
手段で解決
HTML5による
アプリ特化な
手段で解決
やること
まだ
あります。
画面を描画する過程、読み込むファイルの中の作りにまで踏み込んで見えるのは、アプリ開発者だけです
HTML5世代のアプリケーション戦略
Navigation Start
Unload
First Paint
DOMContentLoaded
Above to fold(ATF)
Loaded
→ クリック or サブミット
→ 画面を白くする
→ 描画を開始する
→ DOMの読み込みを完了する
→ 最初に見えるスクリーン内の描画を完了する
HTML
JS/CSSJS/CSSJS/CSS
ImageImageImage
First Viewの最適化
・Resource Priorities
 ファイル(リソース)の読み込み優先度の制御
・Resource Hints
 別ページで使われるファイルやページ全体を先読み
Repeat Viewの最適化
・Service Worker
  オンライン時の振る舞い・キャッシュの細かい制御
作りを把握した上で、アプローチする方法も日々生み出されています
HTML5世代のアプリケーション戦略
ATFの最適化
・CSS/JSのインライン化
 CSS/JSをHTML内に展開しておく
モバイルでのGPU活用
・CSS3 Animation
 GPUを有効活用してスムーズな動きを作る
通信量の最適化
・画像ファイルの変換、Webフォントのサブセット化
 インフラ化しようと思えばできるか…
そして相変わらず、泥臭い方法が残っていて、それもWeb標準側でカバーしようとはしています
HTML5世代のアプリケーション戦略
4. 最後に
・HTTP1.x系からHTTP/2への移る時期、つらい。
 クラウドの普及で若干圧されがちだった、
 インフラエンジニアが再び脚光を浴びる!?
・モバイルだと、Webがユースケースに合わない、つらい。
 オフライン強化、リッチアプリ風の作りが要求されたり、
 市場価値を取り戻すまでしばらく耐える時期かも!?
・Googleがモバイル中心主義になりつつあり、
 Web標準側もモバイル特化の改善に舵を切っている感じ。
 ※Microsoftは、モバイルとデスクトップをくっつけたい派っぽい。
一言だけコメント
インフラ屋さんもアプリ屋さんも、しんどい時期が続きそうですね
・Google - Ilya Grigorik一派
 →実装最速
・Microsoft - Tobin Titus一派
 →実装速度は2番手ぐらい。かなり速い方。
・Mozilla
 →少し後ろを走りつつも追っている。
・Apple
 → \(^o^)/
肝心のアダプションについて
しかも残念なことに、Appleは全くもってパフォーマンス系の機能をサポートしてくれません
モバイル…無理なのか!?
ところが…
喜ぶ人々。
・Google - Ilya Grigorik一派
 →実装最速
・Microsoft - Tobin Titus一派
 →実装速度は2番手ぐらい。かなり速い方。
・Mozilla
 →少し後ろを走りつつも追っている。
・Apple - Ryosuke Niwa一派!?
 → 2015年は本気出す…!?
2015年も
パフォーマンスの技術はもっと良くなる!!
肝心のアダプションについて
これからAppleもパフォーマンス系の機能に力を入れてくれそうで、2015年もますます発展が期待できそうです
Thank You!!
@kawada_hiroshi
速いは楽しい!!
APPENDIX-1
TCP Fast Open(TFO)
→
クライアント サーバ
…こんなの、私の知っているTCPじゃない
けど、なんかわくわくする!!
syn + HttpRequest
ack + HttpResponse
TCPデータ
APPENDIX-2
Performance Timelineと他の仕様との関係
JavaScript APIの仕様
Performance
Navigation
Timing 2
Resource
Timing
Frame
Timing
User
Timing
+ getEntries()
+ getEntriesByType()
+ getEntriesByName()
Performance
Entry
+ name
+ entryType
+ startTime
+ duration
Written by
UML 2.5 Class Diagram
Performance Timeline
<<interface>>
http://www.w3.org/TR/
performance-timeline/
https://w3c.github.io/navigation-
timing/
https://w3c.github.io/resource-
timing/
https://w3c.github.io/user-
timing/
https://w3c.github.io/frame-
timing/
Webページ読込時間の計測
リソース読込時間の計測
リフレッシュレートの計測
任意時点の計測
<<interface>>
Server
Timing https://w3c.github.io/server-
timing/
サーバ接続時間の計測
1
0..*
implements
Navigation Timing→Performance Timeline
JavaScript記述方法の変化
APPENDIX-3
performance && performance.timing && (function() {
var timing = performance.timing;
var loadTime = timing.loadEventEnd - timing.navigationStart;
console.log( loadTime );
})();
performance && performance.getEntriesByType && (function() {
var timing = performance.getEntriesByType(“navigation”)[0];
if( timing ) {
var loadTime = timing.loadEventEnd - timing.navigationStart;
console.log( loadTime );
}
})();
▼ Navigation Timing
▼ Navigation Timing 2
1. High Performance Browser Networking - Ilya Grigorik (O’Reilly Media)
  http://chimera.labs.oreilly.com/books/1230000000545
2. Mobile Analysis in PageSpeed Insights (Google Developers)
  https://developers.google.com/speed/docs/insights/mobile
3. Kokusai Cable Ship Co.,Ltd
  http://www.k-kcs.co.jp/english/topic_unity.html
4. WebPagetest.org
  http://www.webpagetest.org/
5. modern.IE Site Scan
  http://modern.ie/ja-jp/
6. W3C WEB PERFORMANCE WORKING GROUP
  http://www.w3.org/2010/webperf/
7. Evaluating network performance
  https://developer.chrome.com/devtools/docs/network
8. Hello HTTP/2, Goodbye SPDY
  http://blog.chromium.org/2015/02/hello-http2-goodbye-spdy-http-is_9.html
9. rniwa from Apple just joined the Web Performance WG
  https://lists.w3.org/Archives/Public/public-web-perf/2015Jan/0055.html
Reference

Contenu connexe

Tendances

REST API のコツ
REST API のコツREST API のコツ
REST API のコツpospome
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring増田 亨
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかYusuke Suzuki
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなKentaro Matsui
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean ArchitectureAtsushi Nakamura
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかKoichiro Matsuoka
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?Yoshitaka Kawashima
 
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Koichiro Matsuoka
 
イベント・ソーシングを知る
イベント・ソーシングを知るイベント・ソーシングを知る
イベント・ソーシングを知るShuhei Fujita
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugItsuki Kuroda
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドHiroyuki Ito
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているやはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているKoichi Tanaka
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?Takuya Ueda
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャota42y
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
 
20160526 依存関係逆転の原則
20160526 依存関係逆転の原則20160526 依存関係逆転の原則
20160526 依存関係逆転の原則bonjin6770 Kurosawa
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 

Tendances (20)

REST API のコツ
REST API のコツREST API のコツ
REST API のコツ
 
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Springドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのかDDDのモデリングとは何なのか、 そしてどうコードに落とすのか
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
 
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
 
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
Aws Dev Day2021 「ドメイン駆動設計のマイクロサービスへの活用とデベロッパーに求められるスキル」参考資料(松岡パート)
 
イベント・ソーシングを知る
イベント・ソーシングを知るイベント・ソーシングを知る
イベント・ソーシングを知る
 
フロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjugフロー効率性とリソース効率性について #xpjug
フロー効率性とリソース効率性について #xpjug
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイド
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っているやはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャ
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
 
20160526 依存関係逆転の原則
20160526 依存関係逆転の原則20160526 依存関係逆転の原則
20160526 依存関係逆転の原則
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 

En vedette

技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割Toru Yamaguchi
 
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちはYoshio Hanawa
 
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏Yusuke Hirao
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうかMasahito Zembutsu
 
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 Ken'ichi Matsui
 
実践イカパケット解析
実践イカパケット解析実践イカパケット解析
実践イカパケット解析Yuki Mizuno
 
プログラマのための線形代数再入門
プログラマのための線形代数再入門プログラマのための線形代数再入門
プログラマのための線形代数再入門Taketo Sano
 
MySQLテーブル設計入門
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門yoku0825
 
Webアプリケーション負荷試験実践入門
Webアプリケーション負荷試験実践入門Webアプリケーション負荷試験実践入門
Webアプリケーション負荷試験実践入門樽八 仲川
 
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫Yuta Imai
 
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側Takeshi HASEGAWA
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発慎一 古賀
 
中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術Noriaki Kadota
 
SSL/TLSの基礎と最新動向
SSL/TLSの基礎と最新動向SSL/TLSの基礎と最新動向
SSL/TLSの基礎と最新動向shigeki_ohtsu
 
MySQL 5.7の罠があなたを狙っている
MySQL 5.7の罠があなたを狙っているMySQL 5.7の罠があなたを狙っている
MySQL 5.7の罠があなたを狙っているyoku0825
 
フーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みフーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みyuichi takeda
 

En vedette (20)

Sails workshop2
Sails workshop2Sails workshop2
Sails workshop2
 
Sails workshop3
Sails workshop3Sails workshop3
Sails workshop3
 
Sails workshop1
Sails workshop1Sails workshop1
Sails workshop1
 
Sails workshop4
Sails workshop4Sails workshop4
Sails workshop4
 
技術選択とアーキテクトの役割
技術選択とアーキテクトの役割技術選択とアーキテクトの役割
技術選択とアーキテクトの役割
 
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
 
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
 
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料 「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
「内積が見えると統計学も見える」第5回 プログラマのための数学勉強会 発表資料
 
実践イカパケット解析
実践イカパケット解析実践イカパケット解析
実践イカパケット解析
 
プログラマのための線形代数再入門
プログラマのための線形代数再入門プログラマのための線形代数再入門
プログラマのための線形代数再入門
 
MySQLテーブル設計入門
MySQLテーブル設計入門MySQLテーブル設計入門
MySQLテーブル設計入門
 
Webアプリケーション負荷試験実践入門
Webアプリケーション負荷試験実践入門Webアプリケーション負荷試験実践入門
Webアプリケーション負荷試験実践入門
 
オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫オンラインゲームの仕組みと工夫
オンラインゲームの仕組みと工夫
 
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
 
中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術中の下のエンジニアを脱出するための仕事術
中の下のエンジニアを脱出するための仕事術
 
SSL/TLSの基礎と最新動向
SSL/TLSの基礎と最新動向SSL/TLSの基礎と最新動向
SSL/TLSの基礎と最新動向
 
MySQL 5.7の罠があなたを狙っている
MySQL 5.7の罠があなたを狙っているMySQL 5.7の罠があなたを狙っている
MySQL 5.7の罠があなたを狙っている
 
フーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みフーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組み
 

Similaire à ウェブパフォーマンスの基礎とこれから

20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリングInnova Inc.
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Masakazu Muraoka
 
Cloudflareを活用したWebパフォーマンスチューニング
Cloudflareを活用したWebパフォーマンスチューニングCloudflareを活用したWebパフォーマンスチューニング
Cloudflareを活用したWebパフォーマンスチューニングYoichiro Takehora
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱Koichi ITO
 
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SREIida Yukako
 
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースデブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースDevelopers Summit
 
ブラウザのPerformance APIの話
ブラウザのPerformance APIの話ブラウザのPerformance APIの話
ブラウザのPerformance APIの話Hiroshi Kawada
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~Akira Inoue
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 
その Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しようその Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しようOsamu Monoe
 
Web制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテストWeb制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテスト祐磨 堀
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywordsuupaa
 
NuxtJS + SSRで作ったGREE Tech Conference 2020
NuxtJS + SSRで作ったGREE Tech Conference 2020NuxtJS + SSRで作ったGREE Tech Conference 2020
NuxtJS + SSRで作ったGREE Tech Conference 2020gree_tech
 
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」naoki ando
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成Osamu Monoe
 
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~Saki Homma
 

Similaire à ウェブパフォーマンスの基礎とこれから (20)

20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング
 
Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方Html5時代のクリエイターのあり方
Html5時代のクリエイターのあり方
 
Cloudflareを活用したWebパフォーマンスチューニング
Cloudflareを活用したWebパフォーマンスチューニングCloudflareを活用したWebパフォーマンスチューニング
Cloudflareを活用したWebパフォーマンスチューニング
 
アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱アジャイルソフトウェア開発の道具箱
アジャイルソフトウェア開発の道具箱
 
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
[Observability conference 2022/3/11] NewsPicks のプロダクト開発エンジニアが実践するスキルとしての SRE
 
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレースデブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
デブサミ2013【14-E-2】パフォーマンス・チューニングに革命をもたらす最新テクノロジー - トランザクショントレース
 
ブラウザのPerformance APIの話
ブラウザのPerformance APIの話ブラウザのPerformance APIの話
ブラウザのPerformance APIの話
 
Force.com開発基礎
Force.com開発基礎Force.com開発基礎
Force.com開発基礎
 
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
One ASP.NET ~ 今、ASP.NET に何が起こっているのか? ~
 
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
[GrapeCity Web TECH FORUM 2018]グレープシティJavaScript製品のご紹介 活用のコツと開発のポイント
 
楽天エンジニアライフ
楽天エンジニアライフ楽天エンジニアライフ
楽天エンジニアライフ
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
その Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しようその Web サイト、その Web アプリを最新の IE11 に対応しよう
その Web サイト、その Web アプリを最新の IE11 に対応しよう
 
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
【Web TECH FORUM 2017 in大阪】Webシステム開発とJavaScript UIコンポーネント
 
Web制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテストWeb制作者視点で理解するソフトェアテスト
Web制作者視点で理解するソフトェアテスト
 
JavaScript And Keywords
JavaScript And KeywordsJavaScript And Keywords
JavaScript And Keywords
 
NuxtJS + SSRで作ったGREE Tech Conference 2020
NuxtJS + SSRで作ったGREE Tech Conference 2020NuxtJS + SSRで作ったGREE Tech Conference 2020
NuxtJS + SSRで作ったGREE Tech Conference 2020
 
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」
パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」
 
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
 
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~
進化するEdge! ~Creators Update版の新機能から既存機能までまとめて解説!~
 

Dernier

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 

Dernier (7)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 

ウェブパフォーマンスの基礎とこれから