Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 Rails服务器在与foreman一起启动时挂起_Ruby On Rails_Ruby On Rails 3_Delayed Job_Foreman - Fatal编程技术网

Ruby on rails Rails服务器在与foreman一起启动时挂起

Ruby on rails Rails服务器在与foreman一起启动时挂起,ruby-on-rails,ruby-on-rails-3,delayed-job,foreman,Ruby On Rails,Ruby On Rails 3,Delayed Job,Foreman,下面是我的Procfile的外观: web: bundle exec rails server thin -p $PORT -e $RACK_ENV worker: bundle exec rake jobs:work 我打算添加一个辅助进程,因为我希望运行一些后台作业。我遵照指示 这就是我注意到的: 如果单独启动辅助进程,则不会遇到问题 当我将第二行保留在Procfile中并且不更改任何其他内容时,rails服务器会提供一些请求,然后挂起 如前所述,我已经在config/environme

下面是我的Procfile的外观:

web: bundle exec rails server thin -p $PORT -e $RACK_ENV
worker: bundle exec rake jobs:work
我打算添加一个辅助进程,因为我希望运行一些后台作业。我遵照指示

这就是我注意到的:

  • 如果单独启动辅助进程,则不会遇到问题
  • 当我将第二行保留在Procfile中并且不更改任何其他内容时,rails服务器会提供一些请求,然后挂起
  • 如前所述,我已经在config/environments/development.rb中添加了
    STDOUT.sync=true
    ,并在rails控制台中验证了这一点。不起作用
  • 跟踪log/development.log,并将其与foreman输出到shell的内容进行比较,发现两者都符合几个请求,然后foreman停止向shell打印内容,下一个请求将挂起
  • 我使用前面提到的foreman.pkg更新了foreman,并用[6]进行了验证
  • 有人提到,这可能是由于错误的调试语句造成的。我没有使用调试器,并且我的Gemfile.lock中没有pry gem或ruby debug gem
  • 我相信这些症状与这个相关的未解之谜相似
请帮忙

[6] :


在此跟踪并解决:


TL;DR:安装gem,不要使用foreman.pkg

如果您使用的是Heroku,Heroku工具带附带的foreman版本也有同样的问题

使用您可以通过
gem install foreman
获得的工具

which foreman
/usr/bin/foreman
ls -lah /usr/bin/foreman  # checked the updated date