我有大约十台亚马逊 ec2 服务器都在不断地从 rake 任务写入我的 mysql 数据库.. 偶尔当我登录它们检查它们的进度时,我会发现它们已经停止了;并非来自已提出的任何异常,而是只留下“杀死”一词。
即使我使用 --trace
运行任务,唯一打印出来的是“Killed”这个词。
我不太明白为什么会这样(我什至设置了救援 block 以确保这不是与我的数据库被锁定有关的问题,或类似的事情..)
我希望 stackoverflow 世界中的某个人知道该怎么做
1) 阻止我的 rake 任务被随机“杀死”
或
2) 帮助我设置我的服务器,以便在任务被“终止”时立即重新启动任务
最佳答案
我怀疑他们是OOM killer的受害者.可能是它们占用内存太多,系统为了生存而杀掉了它们。
你可以设置一个 god监督那些抽成任务。如果他们被杀,上帝可以重新启动他们。
关于mysql - rake 任务 "Killed",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8709966/