~/talk

“More Than You Ever Wanted to Know About Resource Hints”

Talkat Clarity 2019 · 2019-08-20..08-21· [web-performance, web-platform]
slides:none on file

Resource hints are five simple HTML lines that actually change load time: dns-prefetch saves ~80–120ms for common names but can hit 1–10s in edge cases, preconnect does DNS+TCP+TLS and typically saves ~168ms best case and was worth ~300ms for Trainline equating to £8.1M revenue, prefetch downloads resources into HTTP cache but revalidates after five minutes, preload forces high priority fetches and needs the mandatory as type or Chrome can misprioritize and slow pages ~400ms, and prerender is now NoState Prefetch which fetches subresources without executing them to avoid memory and security costs.

AI-written summary · about

  1. 0:00Intro
  2. 3:09Pro-Tip / Short Summary
  3. 4:22These primitives enable the developer [...] to assist the user agent in the decision process of which origins it should connect to, and which resources it should fetch and preprocess to improve page performance.
  4. 6:48Resolve the IP address for a given domain ahead of time
  5. 11:20When you know the domain but not the URL
  6. 11:58TCP Handshake
  7. 14:38preconnect with dns-prefetch fallback
  8. 15:49Be judicious with preconnect
  9. 19:24A file needed for subsequent navigation
  10. 21:33The user agent SHOULD NOT apply preprocessing on the response and MUST NOT automatically execute or apply it against the current page context.
  11. 24:36prefetch acts like dns-prefetch in IE9
  12. 25:42A mandatory fetch for a file needed for the current navigation
  13. 26:01A way to surface late- discovered resources
  14. 27:01Late-discovered resource?
  15. 29:47The attribute is necessary to guarantee correct prioritization, request matching, application of the correct CSP3 policy, and setting of the appropriate Accept request header.
  16. 31:19The type Attribute
  17. 31:56The crossorigin Attribute
  18. 32:30Keep an eye on Console
  19. 35:58Download and build entire webpages in the background...
  20. 40:57prerender is the API; NoState Prefetch is the mechanism
  21. 41:29A recursive prefetch
  22. 42:29Fetched with lowest possible priority
  23. 43:35Tips, Tricks, and Gotchas
  24. 45:13Edge only supports HTTP header for preconnect
  25. 45:27Edge doesn't support HTTP header for preload
  26. 45:45Generate Dynamically
  27. 47:56You Need a Scheme
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.