Apache: December 2006 Archives

mod_fcgid tips

| | Comments (0) | TrackBacks (0)

Make sure you set IPCCommTimeout to at least 45 to allow enough startup
time.
Set DefaultMaxClassProcessCount to 2 unless your benchmarks tell you to
change.
Set IdleTimeout to 3600 or higher since your only have 2 dispatch.fcgi.
Set ProcessLifeTime to a multiple of IdleTimeout.
Set MaxProcessCount > DefaultMaxClassProcessCount so you can use
mod_fcgid for other things than rails.

mod_fcgid religiously kills idle or old processes so keep IdleTimeout
and ProcessLifeTime to high values.

Here is an example 'starter' /etc/apache2/mods-enabled/fcgid.conf


AddHandler fcgid-script .fcgi
SocketPath /var/lib/apache2/fcgid/sock
IdleTimeout 3600
ProcessLifeTime 7200
MaxProcessCount 8
DefaultMaxClassProcessCount 2
IPCConnectTimeout 8
IPCCommTimeout 60
DefaultInitEnv RAILS_ENV production

If you have plenty of RAM, then increase DefaultMaxClassProcessCount to
about 2*CPU--assume each instance will eat 20-30MB RAM.

After updating ruby and ruby-on-rails, I got this following error in my error log:

Permission denied: mod_fcgid: couldn't bind unix domain socket /etc/httpd/logs/fcgidsock/

Solution: chmod 555 /etc/httpd/logs (this is a symlink to /var/httpd/logs)

About this Archive

This page is a archive of entries in the Apache category from December 2006.

Apache: October 2006 is the previous archive.

Apache: June 2007 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Powered by
Movable Type 4.01