Project

General

Profile

Inconsistent performance

Added by Beau Simensen over 13 years ago

I am seeing very inconsistent performance with my Redmine installs. I've finally gotten to a point where I can actually start to debug it. I installed Redmine on Ubuntu 10.04.1 LTS via. the redmine package. I installed this on a fresh virtual machine that has literally nothing else installed and running on it except for what is on the out of the box Ubuntu 10.04.1 LTS UEC image.

I've seen +6s response times for the index page. Often this is after a period of being idle. Top will show Ruby using upwards of 60% of the CPU. After a few page loads things get speedy again. I know that sometimes improperly configured mail settings can cause an issue but I'm not doing anything with mail (yet). I do not think that is it?

root@ip-172-19-1-2:/usr/share/redmine# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 2
model name      : QEMU Virtual CPU version 0.12.3
stepping        : 3
cpu MHz         : 3199.602
cache size      : 4096 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 4
wp              : yes
flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pse36 clflush mmx fxsr sse sse2 syscall nx lm up rep_good pni cx16 popcnt hypervisor lahf_lm
bogomips        : 6399.20
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

Here are my packages:

Package: mysql-server
Version: 5.1.41-3ubuntu12.6

Package: ruby1.8
Version: 1.8.7.249-2

Package: redmine
Version: 0.9.3-1

Package: libapache2-mod-passenger
Version: 2.2.7debian-1

Here is some information from the logs:

Processing WelcomeController#index (for 10.42.44.22 at 2010-10-19 06:13:38) [GET]
  Parameters: {"action"=>"index", "controller"=>"welcome"}
Rendering template within layouts/base
Rendering welcome/index
Completed in 2054ms (View: 1819, DB: 23) | 200 OK [http://10.42.43.100/redmine/]

Processing WelcomeController#index (for 10.42.44.22 at 2010-10-19 06:16:07) [GET]
  Parameters: {"action"=>"index", "controller"=>"welcome"}
Rendering template within layouts/base
Rendering welcome/index
Completed in 1748ms (View: 1720, DB: 5) | 200 OK [http://10.42.43.100/redmine/]

Processing WelcomeController#index (for 10.42.44.22 at 2010-10-19 06:20:39) [GET]
  Parameters: {"action"=>"index", "controller"=>"welcome"}
Rendering template within layouts/base
Rendering welcome/index
Completed in 17ms (View: 10, DB: 1) | 200 OK [http://10.42.43.100/redmine/]

Processing AdminController#index (for 10.42.44.22 at 2010-10-19 06:20:42) [GET]
  Parameters: {"action"=>"index", "controller"=>"admin"}
Rendering template within layouts/admin
Rendering admin/index
Completed in 41ms (View: 21, DB: 1) | 200 OK [http://10.42.43.100/redmine/admin]

Processing WelcomeController#index (for 10.42.44.22 at 2010-10-19 06:29:02) [GET]
  Parameters: {"action"=>"index", "controller"=>"welcome"}
Rendering template within layouts/base
Rendering welcome/index
Completed in 3457ms (View: 3162, DB: 73) | 200 OK [http://10.42.43.100/redmine/]

Sometimes it is blazingly fast! 41ms? That is pretty decent in my book. 17ms? Great! But that same view (welcome/index) took a considerably larger amount of time to render earlier. I really have no idea what would cause it to be slow "sometimes."

As for configuration, it is pretty much just running the defaults. I haven't added any repos, I haven't changed the username and password or added any additional users. Nothing.


Replies (2)

RE: Inconsistent performance - Added by Felix Schäfer over 13 years ago

Passenger kills processes after a certain amount of being idle per default, they then need some time to get spun up again after that. See the passenger help pages to adapt your config, mine (roughly) looks like that:

<IfDefine PASSENGER>
LoadModule passenger_module modules/mod_passenger.so
PassengerRoot /usr
PassengerLogLevel 0
PassengerRuby /usr/bin/ruby18
RailsAutoDetect On
PassengerMaxPoolSize 20
PassengerPoolIdleTime 0
PassengerMaxInstancesPerApp 0
PassengerUserSwitching On
PassengerDefaultUser apache
PassengerMaxRequests 3000
PassengerHighPerformance on
RailsSpawnMethod smart
RailsFrameworkSpawnerIdleTime 0
RailsAppSpawnerIdleTime 0
PassengerUseGlobalQueue on
</IfDefine>

RE: Inconsistent performance - Added by Beau Simensen over 13 years ago

Thanks, I think that will help a lot. It seems like it still gets stuck firing up after a time but it is a lot faster now than it was last night.

    (1-2/2)