Why is the Rails app under Passenger occasionally grinding to a halt

apache-2.2phusion-passengerruby-on-rails

I have a Rails 2.3.2 app running on Apache with Passenger, and recently, the strangest thing has started happening.

Every so often, the app will just stop processing requests entirely and they'll all back up until they time out. Restarting Apache seems to be the only way out. The system is under relatively light load until this happens, at which point it's under no load at all.

I realize this isn't a lot to go on, but how can I even figure out what's causing this? Of note, global queuing is turned on; Ruby is ruby-enterprise-1.8.6-20080610; and Passenger is the version that came with the aforementioned Ruby Enterprise Edition.

Best Answer

One resource that I found useful was the section of the Passenger users guide where they talk about this:

If one of your application instances is frozen (stopped responding), then you can figure out where it is frozen by killing it with SIGABRT. This will cause the application to raise an exception, with a backtrace.

Related Topic