Sobes.tech
Senior

What are the differences between HTTP/1.1 and HTTP/2 protocols?

sobes.tech AI

Answer from AI

HTTP/1.1 and HTTP/2 are versions of the Hypertext Transfer Protocol, differing in performance and architecture.

Main differences:

  • Multiplexing: HTTP/1.1 opens multiple TCP connections for parallel requests, leading to delays and blocking (head-of-line blocking). HTTP/2 uses a single connection with multiplexed streams, allowing multiple requests and responses to be transmitted simultaneously.

  • Binary protocol: HTTP/1.1 is text-based, while HTTP/2 is binary, simplifying parsing and increasing efficiency.

  • Header compression: HTTP/2 uses HPACK to compress headers, reducing the amount of data transmitted.

  • Prioritization: HTTP/2 supports stream priorities and dependencies, enabling resource loading optimization.

  • Server Push: HTTP/2 allows the server to proactively send resources to the client without a separate request.

In Go, the standard net/http library supports HTTP/2 automatically when using TLS.