I've been looking a bit into HTTP/2, and I believe it could help improve the performance on the systems I'm working with, but I got some questions regarding how it's actually implemented, and regarding backwards incompatibility
HTTP/2 Allows fetching multiple assets from one established connection. Do browsers automatically know what should be fetched from one connection based on the domain, or do you need to tell them specifically? How long is this connection generally open, I mean, if I have some AJAX calls that runs when the page loads, will they be able to reuse the same connection?
How does web servers handle browsers that does not support HTTP/2? Do they negotiate with the browser and fall back to HTTP/1, and is this default behaviour, or does it depend on the server's configuration?
How does browser caching work with HTTP pushing assets from the server? Does the server start with the cache headers and stop if the browser has the item cached? or is the entire thing just pushed every time?
Ben Buchanan (200ok)
I make some bits of the web.
When I converted my personal sites, the main gotchas came from needing to use https along with http2. I had to go through all the templates etc finding http links and changing to https or no-protocol format links; etc.
The actual http2 bit was basically turn-key with my hosting company. From what I understand, browsers that don't understand http2 just get http1.
From memory I got ~20% speed boost for doing nothing more than enabling http2.