Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Deconstructing Performance
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Denys Mishunov
April 10, 2017
Technology
790
4
Share
Deconstructing Performance
As presented at Smashing Conference, San Francisco 2017
Denys Mishunov
April 10, 2017
More Decks by Denys Mishunov
See All by Denys Mishunov
debugger; for developers
mishunov
1
590
Deconstructing Performance
mishunov
2
590
Why Performance Matters
mishunov
2
1k
В погоне за производительностью
mishunov
0
340
Illusion of Time [JSConfEU 2015 edition]
mishunov
1
200
Illusion of Time. When 60 sec is not 1 minute
mishunov
0
160
Научный Дизайн
mishunov
0
290
Let me tell you a story
mishunov
0
150
Science of Design 2
mishunov
5
770
Other Decks in Technology
See All in Technology
Route 53 Global Resolver で高額課金発生!
otanikohei2023
0
120
260422_Sansan_Tech_Talk__関西_vol.3_データ活用のリアル__矢田__.pdf
sansantech
PRO
0
120
コードや知識を組み込む / Incorporate Code and Knowledge
ks91
PRO
0
170
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
150
レビューしきれない?それは「全て人力でのレビュー」だからではないでしょうか
amixedcolor
0
350
AI時代のガードレールとしてのAPIガバナンス
nagix
0
310
AIはハッカーを減らすのか、増やすのか?──現役ホワイトハッカーから見るAI時代のリアル【MEGU-Meet】
cscengineer
PRO
0
200
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
79k
AgentCore×VPCでの設計パターンn選と勘所
har1101
3
310
今年注目する!データ分析プラットフォームでのAIの活用
nayuts
0
160
扱える不確実性を増やしていく - スタートアップEMが考える「任せ方」
kadoppe
0
320
巨大プラットフォームを進化させる「第3のROI」
recruitengineers
PRO
2
1.2k
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.4k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Building Applications with DynamoDB
mza
96
7k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.6k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
430
How GitHub (no longer) Works
holman
316
150k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
HDC tutorial
michielstock
2
630
Fireside Chat
paigeccino
42
3.9k
Transcript
Deconstructing DENYS MISHUNOV • DIGITAL GARDEN AS • @mishunov
PTDBSHPDPN ,FWJO8JOUFS(FUUZ*NBHFT ,FWJO8JOUFS(FUUZ*NBHFT ,FWJO8JOUFS(FUUZ*NBHFT
HPPHMSUD6)
None
2003 2005 2007 2009 2011 2013 2015 "7&3"(&#:5&4 1&31"(& 93,7
kB 2569 kB IUUQHPPHMRKNVN
-0"%*/(5*.& &70-65*0/ 1999 2006 2012 2017 IUUQHPPHMRKNVN 8 s 4
s 2 s 1 s 2569 kB
T DPOWFSTJPὝ T SFWFOVF
.0#*-&53"/4"$5*0/4 4637&: Harris Interactive for Tealeaf, 2011
$634&% BUUIFJSEFWJDF #*@%! .0#*-&53"/4"$5*0/4 4637&:
4$3&".&% BUUIFJSEFWJDF .0#*-&53"/4"$5*0/4 4637&:
5)3&8 UIFJSEFWJDF .0#*-&53"/4"$5*0/4 4637&:
1&01-& )"5& 8"*5*/(
IUUQTHPPHMDE2$& NJMMJPOT 8.143s 14.200s > 15.013s
1&3'3."/$& JTOPU ."5)&."5*$4
1&3'3."/$& JT 1&3$&15*0/
None
14:$)0-0(*$"- 1&3'03."/$& 015*.*4"5*0/
None
None
+/% KVTUOPUJDFBCMFEJ⒎FSFODF 8&#&3'&$)/&3-"8
36-& &7&/5
.&"/*/('6- /05*$&"#-& !==
OPTION 1 OPTION 2 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U OPTION
3 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U
OPTION 1 OPTION 2 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U OPTION
3 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U 1FSGPSNBODF ."55&34 SMASHING CONFERENCE BCTPMVUFOVNCFSTEPO`U і і і
None
36-&
&7&/5 REGRESSION ALLOWANCE 36-&
None
None
5*.&QFSTJTUTNFSFMZBTB DPOTFRVFODFPGUIF&7&/54 UBLJOHQMBDFJO<TQBDF> Martin Heidegger t u
1"44*7& "$5*7&
1"44*7& "$5*7&
1"44*7& "$5*7&
14:$)0-0(*$"-1&3'03."/$&015*.*4"5*0/ PASSIVE ACTIVE
1"44*7& 1)"4&
1"44*7& 1)"4&
"$5*7& 1)"4& 7JEFPTPVSDFIUUQSFZLKBWJLTJHIUTFFJOHJT
015*.*45*$6*
1-3% 97-99% 4 6 $ $ & 4 4 '
" * - 6 3 &
$-*$,.& 015*.*45*$6*
✔ 015*.*45*$6*
"1* ✔ 015*.*45*$6*
"1* ✔ error 0).:ʜ 015*.*45*$6*
015*.*45*$6*
015*.*45*$6*
015*.*45*$6*
MJOLSFMlʜISFGlʜ IUUQTXXXXPSH538%SFTPVSDFIJOUT 3&4063$&)*/54
SFMlEOTQSFGFUDIz SFMlQSFDPOOFDUz SFMlQSFGFUDIz SFMlQSFSFOEFSz SFMlQSFMPBEzBTlUZQFz IUUQHPPHM,LR+%
SFMlEOTQSFGFUDIz SFMlQSFDPOOFDUz SFMlQSFGFUDIz SFMlQSFSFOEFSz SFMlQSFMPBEzBTlUZQFz IUUQHPPHM,LR+%
HPPHMRKNVN
$3*5*$"-1"5)
$3*5*$"-1"5) $0/5&/5 +4 +4 *.( )5.- $44 $44 +4 +4
*.( *.(
$3*5*$"-1"5) $0/5&/5 +4 +4 *.( )5.- $44 $44 *.( *.(
+4
14:$)0-0(*$"-1&3'03."/$&015*.*4"5*0/ PASSIVE ACTIVE
HPPHM[G$-IT
None
None
None
… a couple of hours SURE! ,FWJO8JOUFS(FUUZ*NBHFT
LA LA WEB The Performance Experiment
LA LA WEB The Performance Experiment DISCLAIMER: This experiment contains
copyrighted material. The material is provided for non- profit educational purposes, comments, criticismsm and research. This should constitute a “fair use” of any such copyrighted material as provided for in §107 of the U.S. Copyright Act.
None
A COUPLE OF HOURS (REALLY) (REALLY) NO CHANGES TO FUNCTIONALITY
CONSTRAINTS PRIORITISE PERCEPTION
PASSIVE
PASSIVE
PASSIVE ACTIVE
WAITS FOR ALL ASSETS/SECTIONS REASONS
WAITS FOR ALL ASSETS/SECTIONS
SOLUTION
CRITICAL RENDERING PATH OPTIMISATION SOLUTION
CRITICAL
LA LA LAND HTML CSS IMAGES FONTS
LA LA LAND HTML
LA LA LAND HTML…………………MINIFIED
LA LA LAND CSS CSS HTML…………………MINIFIED
LA LA LAND MAIN CSS HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND FONTS MAIN CSS HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND MAIN CSS 6 FONTS FONTS………….3 (PRELOAD) HTML…………………MINIFIED
CSS………INLINE CRITICAL
LA LA LAND MAIN CSS 6 FONTS IMAGES FONTS………….3 (PRELOAD)
HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND MAIN CSS 6 FONTS IMAGES…………OPTIMISED FONTS………….3 (PRELOAD)
HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND MAIN CSS 6 FONTS IMAGES…………OPTIMISED + RESOURCE
HINTS FONTS………….3 (PRELOAD) HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND MAIN CSS 6 FONTS IMAGES…………OPTIMISED + RESOURCE
HINTS CACHING FONTS………….3 (PRELOAD) HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND JS MAIN CSS 6 FONTS + RESOURCE
HINTS CACHING IMAGES…………OPTIMISED FONTS………….3 (PRELOAD) HTML…………………MINIFIED CSS………INLINE CRITICAL
LA LA LAND JS MAIN CSS 6 FONTS <script async
defer src=“defered.js"> </script>
LA LA LAND JS MAIN CSS 6 FONTS <script async
defer src=“defered.js"> </script> + PREFETCH + PREFETCH
LA LA LAND JS MAIN CSS 6 FONTS <script async
defer src=“defered.js"> </script> + PREFETCH + PREFETCH + PRELOAD + PRELOAD
+ RESOURCE HINTS CACHING IMAGES…………OPTIMISED FONTS………….3 (PRELOAD) HTML…………………MINIFIED CSS………INLINE CRITICAL
+ DEFER & DELAY EVERYTHING ELSE LA LA LAND COOKBOOK
None
None
PASSIVE ACTIVE
SPEED INDEX 14324 START RENDER TTI 13.879s > 17.516s HPPHMLL;-V
SPEED INDEX 14324 START RENDER TTI 13.879s > 17.516s 0.921s
> 5.511s 1651 HPPHMFN80p
HPPHMFN80p SPEED INDEX 14324 START RENDER TTI 13.879s > 17.516s
0.921s > 5.511s 1651 88% FASTER
5IFQFSDFQUJPOPG QFSGPSNBODFJTKVTUBT F⒎FDUJWFBTBDUVBM QFSGPSNBODFῶNBOZ DBTFT t u
5)"/,:06 :&4 5)&*--6453"5*0/4"3&.*/& DENYS MISHUNOV DIGITAL GARDEN AS @mishunov