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
Surprise! Your app is slow because the speed of...
Search
Clay Smith
March 21, 2016
Programming
0
74
Surprise! Your app is slow because the speed of light is slow.
Ignite talk at Mobile Delivery Days 2016.
Clay Smith
March 21, 2016
Tweet
Share
More Decks by Clay Smith
See All by Clay Smith
Automated Canary Analysis with New Relic
smithclay
1
220
Instrumenting CI Pipelines
smithclay
1
110
Serverless Performance with Headless Chrome
smithclay
0
460
FaaS Measurement Fundamentals
smithclay
7
1.4k
Serverless Measurement Limits
smithclay
1
180
Searching for the Server in Serverless
smithclay
1
1.8k
High Performance iOS Networking, v1.20
smithclay
5
210
HTTP/2: The Weird Parts
smithclay
1
100
High-Performance iOS Networking
smithclay
6
1.2k
Other Decks in Programming
See All in Programming
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
340
create_tableをしただけなのに〜囚われのuuid編〜
daisukeshinoku
0
260
ドメインイベント増えすぎ問題
h0r15h0
2
340
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
500
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
110
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
280
Spatial Rendering for Apple Vision Pro
warrenm
0
110
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
260
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
810
創造的活動から切り拓く新たなキャリア 好きから始めてみる夜勤オペレーターからSREへの転身
yjszk
1
130
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Rails Girls Zürich Keynote
gr2m
94
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Docker and Python
trallard
42
3.1k
Building Applications with DynamoDB
mza
91
6.1k
We Have a Design System, Now What?
morganepeng
51
7.3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Transcript
Surprise! Your app is slow because the speed of light.
Clay Smith, New Relic @smithclay Mobile Delivery Days 2016 CC0 wikimedia.org
When you release an app... CC0 pixabay.com
When you get a review like this... "App slow in
the UK. 1 star." -BenedictC CC0 pixabay.com
Who owns mobile app network issues? CC0 pixabay.com Backend/Ops Device/
Mobile Devs "Stuff in the middle we don't control"
Mobile data growth (simplified) Amount of data Now In a
couple years
Global Network Latency in Fiber CC0 pixabay.com Source Destination Great
Circle Distance RT Time in Fiber SFO London 5,375 mi 84 ms SFO Cape Town 10,124 mi 158 ms 1 ms at speed of light = Length of Massachusetts
After one second, your flow of thought is interrupted. CC0
pixabay.com Milliseconds 1 10 100 1000 10000 Not Magic Interrupted Too Late https://www.nngroup.com/articles/response-times-3-important-limits/
App services: more cloud, more complexity CC0 openclipart.org REST API
Auth - IdP #1 Analytics Ad Network Auth - IdP #2
Move it closer? CC0 pixabay.com Datacenter/AZ CDN
CDNs on the Edge CC0 pixabay.com Cache static and dynamic
content + "uncached origin fetch"
#mobileperf Idea CC0 pixabay.com When in doubt, reduce the number
of TCP connections.
TCP: Use it again CC0 pixabay.com Use HTTP keep-alive to
reuse TCP connections.
TCP: Create connections faster CC0 pixabay.com TCP Fast Open can
speed up opening multiple connections.
https://blog.newrelic.com/2016/02/09/http2-best-practices-web-performance/
Weighing HTTP/2 CC0 pixabay.com multiplexing, compression Hard to debug, backend
support?
What dial do we turn (if any)? CC0 pixabay.com
Premature optimization is the source of all evil. -Donald Knuth
in 1974 CC0 pixabay.com Don't touch that dial. (yet)
CC0 pixabay.com Measure often to understand what matters.
CC0 pixabay.com Measure network latency and connect it to U/X
Building connected mobile apps is hard. Monitoring shouldn't be. Thanks!
Clay Smith, New Relic @smithclay Mobile Delivery Days 2016 CC0 wikimedia.org