10 ms·
The HTTP/2 implementation
- thom_nic 11y agoGreat! Now we just need proper HTTP2 support in Amazon ELB...
- Kyprus 11y agoThis is what I'm waiting for as well. Hopefully it comes sooner rather then later.
- seiji 11y agoIt tends to be amazing how certain closed platforms magically get new features right after they get released in open source projects.
- merb 11y agoif elb would use nginx, that wouldn't be a problem. You can sell closed platforms which depending on gpl / agpl code and you would not need to release any code if you don't modify it.
- singlow 11y agoRight, but they don't use nginx. He is either suggesting that it suddenly becomes a priority when they might lose customers because the feature is available elsewhere; or that they go look at the source code of free software to figure out how to implement the feature; and maybe suggesting that they lift some of the free software's code for their own project. The latter would violate AGPL but probably not GPL, as long as they don't distribute a binary.
- merb 11y agoit would not hurt AGPL. If they build software around AGPL which configures the AGPL it won't break it, you wouldn't change any line of code. As long as your project won't depend on the AGPL (the AGPL binary should be replaceable with project XYZ which isn't AGPL). Let's say you build a closed source configuration tool which works for AGPL webserver and a non AGPL webserver, then you wouldn't violate the AGPL as long as the AGPL webserver won't be changed and just be used.
- csmattryder 11y agoNeat, I'll be keeping an eye on this, it should be a similar process to loading the SPDY module in nginx, right? I'm not that much of a sysops guy, but it was (from what I remember) quite easy to get that loaded up. I managed to get my own site going with SPDY 3.1 draft, so I'm quite eager to get HTTP2 support going - if not for it's multiplexing, just to be ahead of the curve!
- wolf550e 11y agoDoes it support prioritizing different files, so a browser can download things in an order that gets the page rendered faster?
- AdrianRossouw 11y agohttp://www.http2demo.io/ http://www.http2demo.io/
- anc84 11y agoHTTP/1.1 1.37s HTTP/2 1.46s
- matt4077 11y ago14s vs. 0.5s (Safari / OS X El Capitan). Quite impressive. I wonder if there's some setting wrong that makes this take 14s for me using http/1. Any ideas? Edit: same with Chrome and similar on Sarafi/iPhone (6s vs 0.6). I wonder if the difference is magnified by higher latency because I'm in Europe? If yes, I guess http/2 is a godsend for all non-Americans.
- odonnellryan 11y agoI've run it a few times. It seems to depend on normal networking conditions, which makes sense. I've had 1 run as low as 1sec and as high as 6.
- Vespasian 11y agoEurope is not the main cause. I'm getting 1.2s vs 0.6s consistently.
- callesgg 11y agoYour ISP is doing some nasty stuff.
- seiji 11y agoMine was HTTP/1.1 at 1.44s versus HTTP/2 at 0.54s. (connection speed: 330 mbps (ethernet->cable modem); client: chrome 46.0.2490.22)
- IMTDb 11y agoGot 1.71 (HTTP/1) vs 2.40 (HTTP/2) at the first test And 2.31 vs 0.64 at the second
- jand 11y agoOh. I hoped for an announcement like 'it's in the latest stable version'. That they are working on it is well known for quite some time - am I missing something?
- ZeroGravitas 11y agoThey did sort of announce that (though it doesn't recommend it for production yet): https://www.nginx.com/blog/nginx-plus-r7-released/ https://www.nginx.com/blog/nginx-plus-r7-released/ "The update provides a fully supported implementation of the new HTTP/2 web standard, the first of its kind for a leading web server." and "Note: Based on user testing of the alpha-level patch, and with the early support from corporate co-sponsors Automattic and Dropbox, the final open source version of HTTP/2 will become available following the release of R7."
- devit 11y agoHow is server push implemented in current nginx? Can nginx itself automatically parse HTML/CSS and send required resources? Is there a mechanism for the proxied application to specify additional resources? (for JavaScript use)
- runesoerensen 11y agoAFAIK Server Push is not supported (it wasn't supported in the `ngx_http_spdy_module` either). This was also mentioned in the alpha patch announcement: HTTP/2's 'Server Push' feature is not supported in this patch and will not be supported in the first production-ready release of the HTTP/2 implementation. This feature might appear in a future NGINX release. [1] [1]https://www.nginx.com/blog/early-alpha-patch-http2/ https://www.nginx.com/blog/early-alpha-patch-http2/
- callum85 11y agoGetting slightly off topic, but I'm confused about an aspect of server push (maybe you can help). Even on HTTP/1, the client typically only downloads assets on the first page load for a given website, then it caches them. Subsequent requests for other pages are much quicker because the assets don't need to be downloaded again. With server push, would the server typically send all linked assets on every request? Or can it somehow keep track of which clients have cached which assets, and avoid wasting bandwidth?
- zimbatm 11y agoYes that would be one possible implementation. It's up to the server and can vary quite a bit depending on the scenario, which is why Nginx hasn't tackled the problem yet. I believe that it's going to take a while to find good heuristics that work in most of the cases. Until then only big companies like Google will have the financial incentive to develop their own custom version that's tailored to their specific use-case.
- gsnedders 11y agoThe browser can cancel the stream after the first "stream open" frame (assuming latency isn't too high, obviously)
- dheera 11y agoI wish unencrypted HTTP/2 without TLS could be supported in major browsers. Although use of encryption should be very strongly encouraged, making it mandatory creates a lot of headaches in certain scenarios.
- finnn 11y agoSuch as?
- Aldo_MX 11y agoGenerating a trusted certificate?
- ck2 11y agoDoes this mean nginx is not going to be able to listen for both SPDY and HTTP2.0 connections on the same IP at the same time ?
- solidpy 11y agoNo. From the article: > The SPDY support is removed, as it's incompatible with the new module.
- tombrossman 11y agoI wonder what happens to the SPDY-specific directives once support is removed. I use 'listen 443 ssl spdy;' and 'add_header Alternate-Protocol 443:npn-spdy/3;'. If these are just ignored no problem, but I wonder if it breaks anything?
- barkingcat 11y agoThose directives will no longer pass the linting that nginx does on its configuration file. New versions of Nginx with spdy support removed will not start until you remove those directives. They are treated as syntax errors, but I think it does give an error message that spdy is deprecated and to remove.
- barkingcat 11y agoSPDY is getting removed from most browsers as well (because it was an experiment in the first place) so unless you have a specially coded web client with SPDY patched back in, there will be fewer and fewer clients able to request SPDY.
- deleted 11y ago[deleted]
- karmicthreat 11y agoFrom inside a Panera: Http/1.1: 12.60s, 20.25s Http/2: 38.15s, 30.06s Might be an issue with a transparent proxy.
- hitlin37 11y agois that the complete http2 implementation in just few k lines of code? wow.
- enneff 11y ago10k LoC is more than enough for an HTTP/2 implementation.
- hitlin37 11y agois that the complete http2 implementation in just few k lines of code? wow.
- DiabloD3 11y agoAnyone know what stable version this will ship in?
- bjacobel 11y ago1.9.5, most likely.
- pkmiec 11y agoImages are fun. But I'd like to see a demo showing how http/2 can affect asset managers / web development. Perhaps show a site with 1-5 bundled css / js vs 100-500 individual css / js. Does a demo like that exist?
- Toast_ 11y agoIs it worth upgrading from SPDY 3.1? Opinions welcome.
- dharma1 11y agowould be interesting to see the difference in speed with a real world site instead of 200 images. Will this be a drop in replacement for 1.1 with nginx? will nginx fall back to 1.1 on browsers that don't support 2?
- enneff 11y agoAre there tests?