top | item 35993452

(no title)

pfyra | 2 years ago

Regarding 1, do you mean that the server would send the response before the request has been received completely? Or is the response for a different request?

discuss

order

orbz|2 years ago

Probably for HTTP Pipelining: https://en.wikipedia.org/wiki/HTTP_pipelining

1vuio0pswjnm7|2 years ago

HTTP/1.1 pipelining is not the same as HTTP/2 multiplexing.

Obviously, one cannot multiplex with HTTP/1.1, but AFAIK there is still a question of whether someone can pipeline (not multiplex) with HTTP/2. HTTP/2, introduced by an advertising company and developed in part by CDN service providers, is designed for web pages that auto-load resources from a variety of hosts, namely advertising servers. It's commercially-focused.

Here is an old example of using HTTP/1.1 pipelining. For the basic task of fetching many files from same host over a single TCP connection.

https://www.daemonology.net/phttpget/

Of course there is much more than one can do with HTTP/1.1 pipelining, such as fetching 100s or 1000s or pages, as "streaming" text/html, from a website in a single TCP connection. It is also possible to HTTP/1.1 pipeline POST requests. IME, HTTP/1.1 pipelining is generally fast and reliable, a very useful and convenient feature for web users, one that I have been using for two decades.

HTTP/2 proponents on HN will sometimes insist that HTTP/1.1 pipelining is entirely supplanted by HTTP/2 multiplexing, ignoring that the web can also be used for non-commercial, non-advertising purposes. They will argue that HTTP/1.1 pipelining is useless because it is not supported by web browsers and cannot support improved e-commerce accompanied by online advertising, data collection and tracking, e.g., websites comprised of resources from a variety of hosts, especially advertisers.

This is a mistake. HTTP/1.1 pipelining and HTTP/2 multiplexing are two different things and they can and they will co-exist. The web is not just for Google and other so-called "tech" companies. Nor is it only for their chosen HTTP clients, "Chrome" and what not. The web is not just for commerce. It is for non-commercial web users, too. It's open to all HTTP clients, including this one from Zig. The web is a public resource.