Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for May 16, 2013
A look at the PyPy 2.0 release
PostgreSQL 9.3 beta: Federated databases and more
LWN.net Weekly Edition for May 9, 2013
(Nearly) full tickless operation in 3.10
All modern OSes offer alternative
Posted Jun 25, 2009 4:23 UTC (Thu) by khim (subscriber, #9252)
Have you seen surveys? Do you know WHY nginx is growing so fast? Do you even
know WHAT the nginx is? It's caching web-server. It can serve static web-
pages and protect "real" server (often Apache server) from slowloris
And it DOES NOT use "a heavy-weight polling syscall" - all moder operating
systems offer alternative...
P.S. The real motivation was not to fight slowloris attack - it was to
reduce server load when it talks with thousands of dial-up clients. Think
about it: if you have huge number of very slow clients the dynamic
is the same! Server processes or threads are tied for minutes when they
serve "feature-rich" pages to clients who only consume 1Kb per second.
Apache was unable to work with it (nginx author tried to fix it for years)
so new web-server was born. And as statistic shows real admins who are in
charge of real sites know all about this problem. Tempest in a
Posted Jun 25, 2009 4:31 UTC (Thu) by quotemstr (subscriber, #45331)
Posted Jun 25, 2009 4:45 UTC (Thu) by khim (subscriber, #9252)
Why do you need an entirely new web server?
you do the same thing with a caching reverse proxy like
That way, you
only need to configure one set of servers.
Posted Jun 25, 2009 5:43 UTC (Thu) by quotemstr (subscriber, #45331)
Because you need solutions, not a buzzwords?
You still need to configure server.
Also, I can't fathom why you would want your web accelerator serving content on its own. A caching reverse proxy setup is the only one that makes sense to me: that way, you have one place to configure what's served: the back-end servers. Because the back-end servers already mark what's static and what's not (via cache-control HTTP headers), you shouldn't have to do anything special to push static content to the front-end server, and the reverse proxy asking the back-end servers once in a while for some static content won't make a difference in the overall load.
Posted Jun 26, 2009 12:21 UTC (Fri) by tcabot (subscriber, #6656)
On the other hand, let's say that your site serves massive quantities of "interesting" image files (which I understand was the original use case for nginx). In that case the server needs to be extremely efficient because the working set is so large that a cache wouldn't do much good.
Horses for courses.
Varnish is the answer
Posted Jun 26, 2009 13:04 UTC (Fri) by dion (subscriber, #2764)
If all you want to do is to mitigate a Slow Loris attack then just move your web server to a different port and start Varnish with the default configuration on port 80.
nginx vs slowloris
Posted Jul 4, 2009 17:18 UTC (Sat) by gvy (guest, #11981)
PS: nginx is really an excellent static httpd/reverse proxy, anyone running moderately busy site should consider looking into it. Could drop apache instance numbers an order of magnitude, together with RAM occupied by those.
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds