通过cron运行Ruby方法有问题

所以我有一个每10分钟运行一次的方法(Background.cron)。

Background.cron通过一组数据库行循环,如果符合某些条件,则运行一个ActionMailer方法发送一封电子邮件。

但是,当ActionMailer方法运行时,似乎正在发生的事情是(根据我的日志),Background.cron方法将停止,直到下一个cron作业准备好开始。

有什么解释呢?

服务器设置是Passenger和Ruby Enterprise Edition的Apache 2。

PassengerMaxPoolSize设置为10,PassengerMaxInstancesPerApp为5。

Slicehost上有一个512MB的片。

听起来像Ruby脚本在那个时候正在轰炸。 包装你的邮件方法,并捕捉引发的exception,并logging? 另外,请检查您的用户本地邮箱。 Cron可能已经通过电子邮件向你发送了一个Ruby BT。