Slide 1

Slide 1 text

Surprise! Your app is slow because the speed of light. Clay Smith, New Relic @smithclay Mobile Delivery Days 2016 CC0 wikimedia.org

Slide 2

Slide 2 text

When you release an app... CC0 pixabay.com

Slide 3

Slide 3 text

When you get a review like this... "App slow in the UK. 1 star." -BenedictC CC0 pixabay.com

Slide 4

Slide 4 text

Who owns mobile app network issues? CC0 pixabay.com Backend/Ops Device/ Mobile Devs "Stuff in the middle we don't control"

Slide 5

Slide 5 text

Mobile data growth (simplified) Amount of data Now In a couple years

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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/

Slide 8

Slide 8 text

App services: more cloud, more complexity CC0 openclipart.org REST API Auth - IdP #1 Analytics Ad Network Auth - IdP #2

Slide 9

Slide 9 text

Move it closer? CC0 pixabay.com Datacenter/AZ CDN

Slide 10

Slide 10 text

CDNs on the Edge CC0 pixabay.com Cache static and dynamic content + "uncached origin fetch"

Slide 11

Slide 11 text

#mobileperf Idea CC0 pixabay.com When in doubt, reduce the number of TCP connections.

Slide 12

Slide 12 text

TCP: Use it again CC0 pixabay.com Use HTTP keep-alive to reuse TCP connections.

Slide 13

Slide 13 text

TCP: Create connections faster CC0 pixabay.com TCP Fast Open can speed up opening multiple connections.

Slide 14

Slide 14 text

https://blog.newrelic.com/2016/02/09/http2-best-practices-web-performance/

Slide 15

Slide 15 text

Weighing HTTP/2 CC0 pixabay.com multiplexing, compression Hard to debug, backend support?

Slide 16

Slide 16 text

What dial do we turn (if any)? CC0 pixabay.com

Slide 17

Slide 17 text

Premature optimization is the source of all evil. -Donald Knuth in 1974 CC0 pixabay.com Don't touch that dial. (yet)

Slide 18

Slide 18 text

CC0 pixabay.com Measure often to understand what matters.

Slide 19

Slide 19 text

CC0 pixabay.com Measure network latency and connect it to U/X

Slide 20

Slide 20 text

Building connected mobile apps is hard. Monitoring shouldn't be. Thanks! Clay Smith, New Relic @smithclay Mobile Delivery Days 2016 CC0 wikimedia.org