subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Campbell Allan <>
Subject Re: subversion tunables
Date Mon, 12 Jul 2010 12:08:37 GMT

On Thursday 08 Jul 2010, west alto wrote:
> Hi Gurus,
> Any advise on initial tuning values for apache MinSpareServers,
> MaxSpareServers, and StartServers, tcp tunings, ulimits, sysctl....
> I'm running svn 1.6 over apache2 pre-fork. System load goes high as
> much as 10 during heavy usage.
> How does mod_dav_svn works on checkout? is every file =  1 thread?
> What would be your recommended MaxRequestsPerChild?
> I'm serving 91 repositories and 2 of them are at least access every 10
> mins with 4 concurrent users.
> Thanks,
> West

I was kind of hoping to see if anyone else replied to this. I've not 
personally tuned apache like this as I don't believe it to be a bottleneck in 
my environment. Pointing a browser at apache's /server-status page will tell 
you how many servers are actively processing requests and if you use 
something like munin then that will tell you more historical information and 
make it much easier to spot if any changes have positive effects.

Creating threads is pretty expensive so I'd expect (but don't take this as 
correct) that mod_dav_svn uses the apache request processing thread to 
perform all operations. It might be there is an extra thread created per 
request so that there is one for comms and one for the actual subversion 
request. Definately not one per file though.

IO wait and authentication checks seem to be the biggest problem in my 
install. To reduce the number of authentication checks I disabled per 
directory auth checks with the 'SVNPathAuthz off' directive. This made a big 
difference to checkouts, our AD authentication servers were temporarily 
blacklisting the subversion server as they were thinking it was DOS'ing them 
when I was performing a test checkout! I also have a patch for mod_auth_pam 
to cache some authentication details and also allow setting the name it 
provides to pam.

The production installation is running on top of apache 2.0 which seems to 
have a minor memory leak or is over eager with caching data. To help reduce 
the impact of that there is a cron entry to gracefully restart the server 3 
times a day. This doesn't seem to be an issue on apache 2.2 though as I have 
an almost identical setup which doesn't suffer from that problem.



Sword Ciboodle is the trading name of ciboodle Limited (a company 
registered in Scotland with registered number SC143434 and whose 
registered office is at India of Inchinnan, Renfrewshire, UK, 
PA4 9LH) which is part of the Sword Group of companies.

This email (and any attachments) is intended for the named
recipient(s) and is private and confidential. If it is not for you, 
please inform us and then delete it. If you are not the intended 
recipient(s), the use, disclosure, copying or distribution of any 
information contained within this email is prohibited. Messages to 
and from us may be monitored. If the content is not about the 
business of the Sword Group then the message is neither from nor 
sanctioned by us.

Internet communications are not secure. You should scan this
message and any attachments for viruses. Under no circumstances
do we accept liability for any loss or damage which may result from
your receipt of this email or any attachment.

View raw message