On 2/22/06, Paul Querna <chip@force-elite.com> wrote:
> Brian Behlendorf wrote:
> > On Wed, 22 Feb 2006, Garrett Rooney wrote:
> >> It might be possible to do some magic in apache modules to make that
> >> work, but I'm not sure how off the top of my head. Would certainly be
> >> nice though.
> >
> > mod_throttle? mod_bandwidth?
> >
> > Brian
>
> These existing modules wouldn't actually fix much, since they are
> generally designed to limit the number of concurrent requests, and/or
> bandwidth used, neither of which is causing the load problem.
>
> One thing you can do, is drop the priority of the Subversion HTTPD
> Process, so it doesn't starve the machine for IO and CPU.
>
> So, I hacked up a 'mod_renice' tonight:
> http://paul.querna.org/~chip/mod_renice.c
>
> Basic flow is to call setpriority() when we detect a REPORT method on
> any repo path matching a regular expression. When the request ends, we
> restore our original priority.
>
> Its only been tested lightly on FreeBSD 6. YMMV.
I'm also investigating the possibility of using an Apache filter to
look at the contents of a REPORT request and send back errors for
particularly stupid requests. This is, of course, a bit more complex,
what with the XML parsing and whatnot, but it's pretty similar to my
mod_speedyfeed module, so I may be able to make it work.
-garrett
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Feb 23 06:33:30 2006