i used an excellent article a while back to set up a launch daemon for
my rails apps on my mac.
now i am at the point where i am ready to move a few things over to
production and i’m wondering what the best way of doing this is on
other operating systems. currently i am using CentOS 3.8 i686.
what are other people doing to keep their apps running? if one goes
down or i have to restart, i’m basically having to go in and start
mongrel for every app i have running on the site.
Use monit: http://www.tildeslash.com/monit/ and add monit to your init.
Assuming you’re using mongrel, it’ll watch them and restart them if
necessary.
Vish
someone just posted this to the Mongrel list:
http://www.mmediasys.com/releases/mongrel_service-0.3.1-mswin32.gem
Whats new?
Beside the things added in previous announcement [1], this version add
basic process monitoring.
What that means?
If for some reason the mongrel process (also a ruby process) suddenly
dies (maybe a runtime error), the service will automatically re-create
a new process.
So, in intervals of 5 seconds, if your process die, it will be
recreated.
That will reduce the uptime problems of your applications, right?
Later this weekend will add the cluster capability, so Windows no
longer envy users running *nix or OSX
Oh, BTW, if you don’t want to add a service in windows, you could
“simulate” it using console command:
mongrel_service console single -c “c:/path/to/my/rails/app” -p 4000 -e
production
Please, all the folks on Windows environment try the latest build of
the gem and report problems (if any was found).
Regards,
–
Luis L.
Multimedia systems
On 11/30/06, Vishnu G. [email protected] wrote:
i used an excellent article a while back to set up a launch daemon for
–
Ed Hickey
Developer
Litmus Media
816-533-0409
[email protected]
A Member of Think Partnership, Inc
www.ThinkPartnership.com
Amex ticker symbol: THK
Vishnu G. wrote:
Use monit: http://www.tildeslash.com/monit/ and add monit to your init.
Assuming you’re using mongrel, it’ll watch them and restart them if
necessary.
I have to second this recommendation. We just started using monit to
monitor our mongrels this past week, and we couldn’t be happier. Not
only does it monitor whether the service is up or not, it also monitors
cpu and memory usage, allowing you to take action appropriately. If
that isn’t enough, it also provides a simple web interface, giving you
up to the minute info on all your processes, allowing you to restart
them right from the interface.
Here is an example of the configuration syntax:
check process mongrel_8000 with pidfile /path/to/mongrel.8000.pid
start program “/usr/bin/mongrel_rails cluster::start -C
/path/to/mongrel_cluster.yml”
stop program “/usr/bin/mongrel_rails cluster::stop -C
/path/to/mongrel_cluster.yml”
# alert me if memory is greater than 40MB
if totalmem > 40.0 MB for 2 cycles then alert
# restart if memory is greater than 50MB
if totalmem > 50.0 MB for 4 cycles then restart