On Fri, Jun 1, 2012 at 12:07 AM, Nathan Baker <[email protected]> wrote: > Thanks Kenn, I checked and didn't see any permissions globally set for > everyone, except the Create Ticket right is set for Everyone on each of our > queues. > > I made a few more changes though and am considering the problem fixed at > this point. I found that the system was doing a lot of memory swapping, > even though I increased the memory from 512MB with RT 3.8.8 (and MySQL) to > 2GB with 4.0.5 (and Postgresql). I disabled all debugging and heavy > logging, and adjusted the Apache configuration to increase the > KeepAliveTimeout to 60 and reduce the MinSpareServers and MaxSpareServers. > The apache processes were using between 60-100MB each (because of modperl I > think), so if you have 15 apache processes running that's potentially 1.5GB. > After making that change the system is "lightning fast" again. I still > might add 1-2GB of memory just to be safe, I just didn't think that much > should be necessary.
It shouldn't be necessary if you know how to fit things in. You don't want KeepAliveTimeout to be very high. Keep alive at 60 seconds means that user when touched apache process holds it from serving other users for 60 seconds even if he doesn't do anything. 10 users hit the server within a minute - you need 11 apache processes to serve next user. Your deployment is not configured for such values. For big keep alive values you need two step processing with light frontend and heavy backend. Frontend keep connections open and can hold many of them with low footprint. For example take a look at the following blog post: http://blog.webfaction.com/a-little-holiday-present, especially memory footprint chart. As the backend you either use FCGI server running RT, your current apache setup or something else. Take a look at the following extension: http://search.cpan.org/~ruz/RT-Extension-Nginx-0.02/lib/RT/Extension/Nginx.pm#FEATURES It generates config for nginx where a few features of the server and knowledge of RT are used to lower memory footprint, increase concurrency, lower page load times. > I also have rt-clean-sessions running every night, which should help some. > > Thank you everyone that helped! -- Best regards, Ruslan.
