New nginx module: ngx_softlimit
scyth at unixreich.com
Wed Jun 30 21:35:06 MSD 2010
On Wed, 30 Jun 2010 20:53:58 +0400
Maxim Dounin <mdounin at mdounin.ru> wrote:
> On Wed, Jun 30, 2010 at 06:28:51PM +0200, Zeljko Tomic wrote:
> > I wrote a small, but sometimes very useful module for limiting
> > the number of active connections, in a "soft" way.
> > Description and usage:
> > -----------------------
> > In situation when using nginx for serving static files and
> > primarily as a proxy/proxy_cache with some slower backend (or
> > even php fastcgi), limits of connections and requests that nginx
> > can handle are much higher than they are on backend server(s).
> > When you know the limits of your backend, it is bad practice to
> > apply those limits on nginx's worker_connections, because it's
> > obvious that when limits are met, new requests won't come
> > through and this leaves you with bad visitor experience.
> It would be a good idea to clarify differences from limit_conn
> module. Right now it looks like use cases you consider are better
> handled by limit_conn.
The difference is that limit_conn (from limit_zone module) limits the number of simultaneous connections PER IP. This is useful in many cases, but soflimit_module, as stated above, compares its limit with total number of active connections, which is different. For example, site can have 2000 different clients with 1 connection each, but backend can handle only 300 without performance issues. Actual limits of course vary from site to site.
> Maxim Dounin
> nginx-devel mailing list
> nginx-devel at nginx.org
Zeljko Tomic <scyth at unixreich.com>
More information about the nginx-devel