所以我有一个每 10 分钟运行一次的方法(Background.cron),确切地说。
Background.cron 循环遍历一组数据库行,如果满足某些条件,则运行 ActionMailer 方法来发送电子邮件。
但似乎发生的情况是(根据我的日志)当运行 ActionMailer 方法时,Background.cron 方法会停止,直到下一个 cron 作业准备好启动。
对此该如何解释呢?
服务器设置是带有 Passenger 和 Ruby Enterprise Edition 的 Apache 2。
PassengerMaxPoolSize 设置为 10,PassengerMaxInstancesPerApp 设置为 5。
我在 Slicehost 上有一个 512MB 的切片。
答案1
听起来 Ruby 脚本此时崩溃了。包装邮件方法并捕获任何引发的异常并记录?另外,检查用户的本地邮件池。Cron 可能已经通过电子邮件向您发送了 Ruby BT。