Accelerating Node.js Applications with HTTP/2 Server Push
blog.cloudflare.com
blog.cloudflare.com
For example, while I'm playing one youtube video, they would download the next one.
smh.
It simply means you can reduce the latency of fetching resources which are referred to within the document.
It wouldn't really make sense to use this for something like YouTube videos - that's more application level rather than the HTTP level.
The Chromium team, employed by one of the largest backers of HTTP/2 Push, recently did a thorough analysis (excellent read) [1], which recommends the following best practices; paraphrased, commentary mine:
[A] watch and aggressively respond to network utilization
[B] construct a dependency graph of resources (presumably by actually parsing the HTML on server-side, or beforehand out-of-band and store it some other place)
[C] have the client communicate the state of its cache! (there's an RFC already being proposed for this [2], and some software already implements it or something similar [3][4])
[D] have custom, conditional logic for cookies
----
[1] https://docs.google.com/document/d/1K0NykTXBbbbTlv60t5MyJvXj... [2] https://tools.ietf.org/html/draft-ietf-httpbis-cache-digest-... [3] https://mariusgundersen.net/module-pusher/ [4] https://h2o.examp1e.net/configure/http2_directives.html#http...