Networking & Infrastructure
A major revision of the HTTP protocol that introduces multiplexing, header compression, and server push over a single binary framing layer on TCP.
HTTP/2 is the successor to HTTP/1.1, standardized in 2015. It addresses the head-of-line blocking that limited HTTP/1.1 by multiplexing many requests over a single TCP connection — a single connection can carry hundreds of in-flight requests in parallel without waiting for earlier ones to finish. It introduces binary framing for efficiency, header compression (HPACK) to eliminate repeated metadata overhead, and server push (which has since been deprecated in browsers).
For most websites, HTTP/2 yields meaningful page-load improvements with no application changes — turning it on at the load balancer or CDN is the entire deploy. It particularly helps when pages load many small assets, which was the original anti-pattern HTTP/1.1 forced developers to work around with sprite sheets and concatenation.
HTTP/2 still runs on TCP, so a single dropped packet stalls all multiplexed streams (TCP head-of-line blocking). HTTP/3 fixes this by moving to QUIC over UDP.
Enable HTTP/2 (or HTTP/3) at every TLS termination point. The benefit is essentially free.
HTTP/2's benefits are smaller than they were in 2015 because modern browsers and servers have already optimized HTTP/1.1 use. TCP head-of-line blocking remains an issue under packet loss.
TCP is a reliable, ordered, connection-oriented protocol. UDP is a fast, connectionless, best-effort protocol. They serve different workloads.
A server that sits in front of one or more backend servers and forwards client requests to them, often handling TLS, caching, compression, and load balancing.
A globally distributed network of edge servers that cache static content close to end users to minimize latency and origin load.
A hierarchical, distributed naming system that translates human-readable domain names like systemcity.io into IP addresses computers route to.