【发布时间】:2013-01-09 00:43:03
【问题描述】:
我正在尝试在多个守护进程中运行相同的脚本。
myapp.rb 看起来像这样:
loop do
sleep 5
1 / 0 # crash it
end
我的myapp_controller.rb:
require 'rubygems'
require 'daemons'
options = {
:log_output => true,
:backtrace => true,
:monitor => true,
:multiple => true,
:log_dir => '/mnt/log/',
:hard_exit => true
}
Daemons.run(File.join(File.dirname(__FILE__), 'myapp.rb'), options)
当我连续多次运行ruby myapp_controller.rb start 时,它会创建很多守护进程,正如我所料。但是,过了一会儿,由于myapp.rb 中的错误,守护程序崩溃并且监视器仅重新启动一个而不是全部。所以我最终得到了一个正在运行的守护进程。
为什么?我做错了什么?
【问题讨论】: