7 messages in ru.sysoev.nginxRe: Appropriate use for nginx?
FromSent OnAttachments
Drew DeNardoSep 13, 2007 12:55 pm 
Igor SysoevSep 16, 2007 6:59 am 
Drew DeNardoSep 17, 2007 7:49 am 
Roger PackSep 17, 2007 12:07 pm 
Malte SussdorffSep 17, 2007 8:57 pm 
Roger PackSep 19, 2007 12:10 pm 
Malte SussdorffSep 23, 2007 9:22 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: Appropriate use for nginx?Actions...
From:Roger Pack (roge@public.gmane.org)
Date:Sep 19, 2007 12:10:59 pm
List:ru.sysoev.nginx

Hi Malte. Being able to establish persistent connections would enable nginx to 'reuse' them -- thus avoiding the (small) latency of TCP slow start for each connection. Of course the question that then arises in ones mind would be 'how many permanent connections to make'--a possible answer being either a fixed number per backend, or a dynamic pool (i.e. as many as you ever happen to need, reusing them as they are freed). It would be nice, for example, to be able to specify a certain number of maximum connections to each instance of Mongrel (running Ruby on Rails) at one, as only one can be processed at a time, and this would then guarantee load balancing between them.

The next step in this particular paradigm would be to have nginx specify and open a port on which backends can connect, themselves, and then have nginx automatically balance between all currently connected back ends. This would enable a user to create more mongrel instances (say on other machines) and attach them to nginx silently and without any down time.

In retrospect I think TCP slow start is not dramatically slow when on the same machine, and nginx already does some nice load balancing, but my suggestions might result in a minimal gain, but maybe a few milliseconds. Thoughts? Thanks. -Roger

On 9/17/07, Malte Sussdorff <suss@public.gmane.org>
wrote:

Hi Roger, which benefits do you envision from this, can you give examples? I am just intrigued. Thanks Malte

Am 17.09.2007 um 21:08 schrieb Roger Pack:

Hmm. I then wonder if nginx has the optional ability to establish constant connections with a backend, then reuse those (i.e. its own keep-alive's with an http proxy--establish a single connection, client A connects to nginx, nginx uses it, then after that B connects to nginx, nginx reuses A's connection for B's transfer). That might be useful. Thanks!

- -Roger Pack I like belief. http://www.google.com/search?q=free+bible