Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails &引用;“上帝”;不启动resque worker_Ruby On Rails_Ruby_Resque_God - Fatal编程技术网

Ruby on rails &引用;“上帝”;不启动resque worker

Ruby on rails &引用;“上帝”;不启动resque worker,ruby-on-rails,ruby,resque,god,Ruby On Rails,Ruby,Resque,God,我在启动和运行上帝宝石时遇到了一些麻烦。我基本上是从Github复制了配置文件,但它似乎没有正确启动resque worker。我的配置文件如下所示: rails_env = "production" rails_root = "/path/to/root" num_workers = 1 num_workers.times do |num| God.watch do |w| w.dir = "#{rails_root}" w.name = "ema

我在启动和运行上帝宝石时遇到了一些麻烦。我基本上是从Github复制了配置文件,但它似乎没有正确启动resque worker。我的配置文件如下所示:

rails_env   = "production"
rails_root  = "/path/to/root"
num_workers = 1

num_workers.times do |num|
  God.watch do |w|
    w.dir      = "#{rails_root}"
    w.name     = "emailer-#{num}"
    w.group    = 'emailer'
    w.interval = 30.seconds
    w.behavior(:clean_pid_file)
    w.env      = {"QUEUE"=>"emailer", "RAILS_ENV"=>rails_env}
    w.start    = "/usr/local/bin/rake -f #{rails_root}/Rakefile environment resque:work"

  end
end
我用以下命令运行上帝:

sudo god -c resque.god -D
这为我提供了以下输出:

I [2012-08-15 19:32:00]  INFO: resque.god
I [2012-08-15 19:32:00]  INFO: Syslog enabled.
I [2012-08-15 19:32:00]  INFO: Using pid file directory: /var/run/god
I [2012-08-15 19:32:00]  INFO: Socket already in use
I [2012-08-15 19:32:01]  INFO: Socket is stale, reopening
I [2012-08-15 19:32:01]  INFO: Started on drbunix:///tmp/god.17165.sock
I [2012-08-15 19:32:01]  INFO: emailer-0 move 'unmonitored' to 'up'
I [2012-08-15 19:32:01]  INFO: emailer-0 moved 'unmonitored' to 'up'

但从来没有工作人员出现在resque web界面中,也从来没有工作被从队列中拖出。谁能看出我做错了什么?另外,我已经尝试过用我常用的脚本从命令行启动一个worker,它可以正常工作。哦,这个在Ubuntu 10.04上运行,我想你需要在w上传递队列名称

w.start = "/usr/local/bin/rake -f #{rails_root}/Rakefile environment resque:work QUEUE=emailer"