Michael S. Fischer wrote: >> I've done that for a specific reason relating to backend PHP processes. > > I don't dispute your reasoning; my employer does this as well. > KeepAlive with Apache/PHP can be a recipe for resource starvation on > your origin servers.
Hi Michael, Precisely, we only have perhaps 50 PHP children serving requests, so if these are kept open to serve idle keep-alive connections, that severely limits the numbers of dynamic page requests we can serve. >> I typically have thousands of connections in TIME_WAIT mode as a >> result, which is expected, but I wonder what the solution could be if >> I ever hit more connections than local ports available. > > I think SO_REUSEADDR is the answer - I'm somewhat surprised that Varnish > doesn't set it by default for the backend connections. I've had a browse through the Varnish 2.0.4 source now and have convinced myself that SO_REUSEADDR isn't set. Can you think of any specific gotchas I might encounter if I added setsockopt() before the connect() when getting a backend connection? Cheers, Nick. _______________________________________________ varnish-misc mailing list varnish-misc@projects.linpro.no http://projects.linpro.no/mailman/listinfo/varnish-misc