Server Side Rendering, caching and performance

23
Server Side React JavaScript @ateevchopra

Transcript of Server Side Rendering, caching and performance

Page 1: Server Side Rendering, caching and performance

Server Side React JavaScript

@ateevchopra

Page 2: Server Side Rendering, caching and performance
Page 3: Server Side Rendering, caching and performance

Stack

• NodeJs

• ReactJs

• Redux

• Redis

Page 4: Server Side Rendering, caching and performance

Evolution of the web

• Static web pages

• SPAs and gotchas

• Universal Apps and gotchas [SOLVED]

Page 5: Server Side Rendering, caching and performance

Static Websites

Page 6: Server Side Rendering, caching and performance

Static Websites

• First Load 👍😍

• Visibility / SEO 👍😍

• Dynamic 👎😢

Page 7: Server Side Rendering, caching and performance

JavaScript

Page 8: Server Side Rendering, caching and performance

Single Page Applications

Page 9: Server Side Rendering, caching and performance

SPAs

• First Load 👎😢

• Visibility / SEO 👎😢

• Dynamic 👍😍

Page 10: Server Side Rendering, caching and performance

Universal JavaScript

Page 11: Server Side Rendering, caching and performance

Server Side Rendering +

SPA

• First Load 👎😢

• Dynamic 👍😍

• Visibility / SEO 👍😍

Page 12: Server Side Rendering, caching and performance
Page 13: Server Side Rendering, caching and performance

4

3

2 1

Calculating Perf

5

Page 14: Server Side Rendering, caching and performance

Calculating Perf

500ms (response time from API)

+150ms (for server side rendering)

+10 ms (for node server)

+150 ms (network latency)

------------------------------------------

= 810 ms

Page 15: Server Side Rendering, caching and performance

Cache me if you can !

Page 16: Server Side Rendering, caching and performance

4

3

2 1

Calculating Perf

5

Page 17: Server Side Rendering, caching and performance

Caching the API

500ms (response time from API)

+150ms (for server side rendering)

+10 ms (for node server)

----------------------------------------

= 160 ms (500 ms saved ! )👍😍

Page 18: Server Side Rendering, caching and performance

4

3

2 1

Calculating Perf

5

Page 19: Server Side Rendering, caching and performance

Caching the whole page !

500ms (response time from API)

+150ms (for server side rendering)

+10 ms (for node server)

----------------------------------

= 20 ms (650 ms saved ! )👍😍

Page 20: Server Side Rendering, caching and performance

Cache Bursting !

• Manual Trigger/ When data updates happen.

• Whenever you deploy !

Page 21: Server Side Rendering, caching and performance

Server Side Rendering +

SPA+

Caching

• First Load 👍😍

• Visibility / SEO 👍😍

• Dynamic 👍😍

Page 22: Server Side Rendering, caching and performance

Highlights• Static websites

• SPAs

• Universal Apps

• Performant Universal Apps

• Next ?

Page 23: Server Side Rendering, caching and performance

@ateevchopraateev.in