load balancing (was: Re: re(4) update)

Joerg Sonnenberger joerg at britannica.bec.de
Mon Oct 30 13:07:37 PST 2006


On Mon, Oct 30, 2006 at 11:22:53AM -0800, Matthew Dillon wrote:
>     I personally believe that this was one of the original reasons why
>     zero-copy was implemented.  It was largely superceeded by sendfile()
>     which is zero-copy by design, to the point where I do not personally
>     believe that there is any good argument for a zero-copy VM solution
>     for userland OTHER then sendfile().

This is also the reason for one of the most often violated rules of web
programming -- separation of static from dynamic content. Esp. high-load
servers often benefit from it as the static content is usually just
driven by bandwidth and not CPU. Doing load balancing for a static
server is therefore often enough just not worth it.

The problem with proxy architectures is of course the second copying,
esp. kernel -> userland -> kernel, which can put a bunch of additional
load on frontend machines. Using approaches similar to state-full
firewall handling e.g. of FTP can be used for this as well, e.g. make it
a transparent proxy. This is a lot more work though. I'm not aware of
any such Open Source solution though. It shouldn't be hard to do that
e.g. in a small kernel module though.

Joerg





More information about the Users mailing list