MageStack's powerful and free CDN has supported HTTP/2 for a long while now, but its a feature we've been desperate to add to the wider stack, so that the full request stream can be delivered over HTTP/2.
Part of the delay for this was waiting on full vendor support from some underlying applications that we use in the stack (Varnish and HAProxy to name a few). But as of Monday this week, I can confirm that we've got full support across the stack and MageStack now completely supports HTTP/2, top to bottom.
What does HTTP/2 mean for me
There's a few problems that HTTP/2 helps solve, including performance, bandwidth utilisation. The internet has functioned for a long time using HTTP/1, which is a somewhat ageing protocol that is starting to struggle with the delivery of assets on modern websites. The chief benefit of HTTP/2 over HTTP/1 is how it delivers content using multiplexing.
Unlike HTTP/1, where each asset requires its own TCP connection, HTTP/2 is able to combine the delivery of assets over a single TCP request. This can dramatically reduce page load times, network traffic and even bandwidth utilisation by being able to compress HTTP headers.
You can see this in practice by observing the net output of your browser (or the waterfall shown on tools like Pingdom), where the download start time is exactly the same for a number of assets, showing them all being delivered simultaneously over the same stream, rather than one after another.
How do I use HTTP/2
Making use of HTTP/2 on MageStack is particularly easy. At present, it is only supported for HTTPS (but soon, we'll be able to enable it for HTTP too). All you need to do is ensure your store is using HTTPS and that's it - HTTP/2 will be in full effect, accelerating the load times of your site.
There are some recommendations when using HTTP/2 that go against some previous optimisations that may have once been used for HTTP/1.
No more sharding
Previous advice was to split requests across multiple different domains to make full use of parallelised downloads - but now that HTTP/2 can do this natively, it actually impairs performance by using multiple different subdomains for content delivery.
So where you may have once used
skin. for content delivery - its best now consolidating that down to a single domain.
Don't combine assets (or inline assets)
This has always been controversial for Magento and not something Sonassi recommend. With HTTP/2 that debate is finally over, as it doesn't make a difference about the number of static assets being sent - as they are delivered over a single multiplexed stream.
Enough already, I'm sold, when can I start using it?
Its live now! Just ensure your store has a valid HTTPS certificate and your URLs are set to use HTTPS and you'll be good to go. We definitely recommend pairing this with our free CDN if you want to reduce bandwidth usage or help improve load times for your global customer base.