Live data from Hacker News

Nginx 1.0.0 is out

nginx.org

51–60 of 77 posts

Re: Nginx 1.0.0 is out

#51
We've had nginx in production for three years. 20 billion requests. 458 live configuration changes. A dozen or more live binary upgrades. Countless DOS attacks.

One known failure. One. Because I was an idiot and tried to do something a little too clever in our configuration.

It's one of the best pieces of system software I've ever used. I can't thank Igor and the nginx community enough.

Re: Nginx 1.0.0 is out

#52
post #26

I first heard of Nginx from a blog post[1] by Ezra Zygmuntowicz almost 5 years ago. I suspect Ezra was the primary contributor to the success of Nginx in the western world. [1]: http://brainspl.at/articles/2006/08/23/nginx-my-new-favorite...

On a slightly related note, I first heard about Redis from Ezra -- probably ~2 years ago. I believe he deserves some similar type of credit for the early spread of Redis.

(His latest project cloudfoundry.com just launched today, so I think it's fairly relevant to give the guy some props right now :-)

Re: Nginx 1.0.0 is out

#53
post #15

A bit off topic, please consider the following example in [1]: if ($args ~ post=140){ rewrite ^ http://example.com/ permanent; } Why is "^" used as a regex wildcard instead of ".*"? Thanks! [1] http://wiki.nginx.org/HttpRewriteModule

I think that regex matches any string as well - ^ simply matches the start of a line and all strings have a start. It might also be more performant because the regex engine doesn't consume the whole string before finding a match..

That is exactly right. See "Taxing Rewrites" on http://wiki.nginx.org/Pitfalls

Re: Nginx 1.0.0 is out

#57

Earlier quoted context omitted.

What do you mean? HTTP1.1 says nothing about WebSockets, and nginx does support HTTP1.1.

Websockets uses the http 1.1 upgrade header to transform an http request into a websocket. Nginx proxy module only supports http 1.0 basically. So no proxying to a websocket server yet.

For what it's worth, proxying HTTP/1.1 is tremendously complex, and WebSockets are an interesting and somewhat intimidating pile of additional trouble. It's been years since I've worked on a proxy (I was a Squid developer many years ago), but since my current project will be dealing with WebSockets, it triggered an instant "I wonder how that's going to work through proxies" response, and an ingrained moment of my heart skipping a beat thinking about how complex such an implementation might become...so I went digging, and found this great thread on the Squid list:

http://www.squid-cache.org/mail-archive/squid-dev/200907/003...

If you want to skim, the really knowledgeable parties in the discussion are Henrik Nordstrom, Robert Collins, Alex Rousskov, Mark Nottingham, and Ian Hickson.

It's actually not as bad as I'd feared, but the protocol also obviously had many issues unresolved back then (and probably still, since security concerns led to it being disabled in Firefox 4 and Opera), as did the plausibility of implementing a proxy or a proxy cache that could support it.

But, to get back to nginx, it is also possible to selectively support 1.1 features without supporting the entire protocol. Squid has supported persistent connections for over a decade, but took years to get support for caching with ETag, ranges, and a number of MUST features, so it reported as HTTP/1.0 with additional capabilities (it might still do this, I haven't paid much attention since leaving the project). So, it seems plausible that someone could implement just the necessary features for WebSockets, without having to implement everything in HTTP/1.1.

Re: Nginx 1.0.0 is out

#58
post #21
post #17

Earlier quoted context omitted.

I don't think nginx has support for websockets yet.

... because WebSockets requires a HTTP 1.1 server (just connecting the dots in case people didn't know this).

I doubt the server would need to implement all of 1.1 to support WebSockets. Many proxies support a subset of 1.1 while reporting as a 1.0 server (Squid was one for years, and probably still is, even though it supports a wide variety of 1.1 capabilities). I talked about this in another thread: http://news.ycombinator.com/item?id=2439406

Re: Nginx 1.0.0 is out

#60
post #26

I first heard of Nginx from a blog post[1] by Ezra Zygmuntowicz almost 5 years ago. I suspect Ezra was the primary contributor to the success of Nginx in the western world. [1]: http://brainspl.at/articles/2006/08/23/nginx-my-new-favorite...

On a slightly related note, I first heard about Redis from Ezra -- probably ~2 years ago. I believe he deserves some similar type of credit for the early spread of Redis. (His latest project cloudfoundry.com just launched today, so I think it's fairly relevant to give the guy some props right now :-)

Thanks guys ;)Glad the configs and blog posts helPed you.
Post reply on HN