5 ms·
This is actually pretty impressive! https://http2.golang.org/gophertiles https://http2.golang.org/gophertiles
by kid0m4n 12y ago
This is actually pretty impressive!
https://http2.golang.org/gophertiles https://http2.golang.org/gophertiles
- pests 12y agoNoticed that one too. The difference between 1s latency is huge between HTTP/1 and HTTP/2!
- bonn1 12y agoWhere do you see 1sec latency difference? EDIT: ok found it and it's striking, the difference is even more than 1 sec (total loading time)
- bsdetector 12y agoThe server doesn't support keep-alive, and it doesn't support pipelining. It seems to be built by design to have the worst possible performance for HTTP/1.1. Whatever problems pipelining may or may not have, a benchmark like this one loading a bunch of small static images is what it is designed for. I can see how some small-timey Go implementation would not have an actual HTTP/1.1 server, but for Google to come out with HTTP/2 without even having tested against pipelining is just pitiful. These Google people seem hellbent on not ever having a fair comparison.
- pkulak 12y agoYour browser wouldn't even use pipelining if it was supported. The reason HTTP/2 exists is because pipeling ended up not being a solution.
- bsdetector 12y agoPipelining works fine. It's on in mobile Safari, and neither Google nor Mozilla found what software it didn't work on (so probably Superfish and other malware). If you use Firefox it's still a great way to speed up normal page loads since HTTP/2 isn't used for unencrypted data.
- bgentry 12y agoPretty sure the demo server supports keep-alive, just as all Go net/http servers do by default: https://github.com/bradfitz/http2/blob/master/h2demo/h2demo.go https://github.com/bradfitz/http2/blob/master/h2demo/h2demo....
- bsdetector 12y agoThere's no "Connection: keep-alive" in the response header. If they purposely turned it off that's even worse.
- lucian1900 12y agoThat's because it's the default in HTTP 1.1. The server would need to send "Connection: close" to disable keep-alive.
- bsdetector 12y agoApparently "connection: keep-alive" is needed to enable pipelining in the browsers: http://www.guypo.com/http-pipelining-big-in-mobile/ http://www.guypo.com/http-pipelining-big-in-mobile/
- glittershark 12y agoThe comparison there had me literally jumping up and down in my seat.