Rails server hangs when started with foreman

天大地大妈咪最大 提交于 2019-12-08 03:56:54

问题


Here's what my Procfile looks like:

web: bundle exec rails server thin -p $PORT -e $RACK_ENV
worker: bundle exec rake jobs:work

I intend to add a worker process because I wish to run some background jobs. I'm following these instructions

This is what I noticed:

  • No problems encountered if the worker is started separately.
  • When I keep the second line in the Procfile and don't not change anything else, the rails server serves a couple of requests and hangs after that
  • As mentioned here , I've added STDOUT.sync = true to config/environments/development.rb and verified the same in the rails console. Did not work.
  • Tailed log/development.log and compared it against the stuff that foreman outputted to the shell and noticed that both matched for a couple of requests and then foreman stopped printing out stuff to the shell - the next request would then hang
  • I updated foreman using foreman.pkg as mentioned here and verified the same with [6]
  • It was mentioned here that this might be caused due to a stray debug statement. I'm not using the debugger and I do not have the pry gem or the ruby-debug gem in my Gemfile.lock
  • I believe the symptoms are similar to this related unanswered question

Please help!

[6]:

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

回答1:


Tracked and resolved here:

https://github.com/ddollar/foreman/issues/244

TL;DR: Install the gem, don't use foreman.pkg




回答2:


I'll add than if you're using Heroku, the foreman version included with the heroku toolbelt has the same issue.

Use the one you can get with gem install foreman instead.



来源:https://stackoverflow.com/questions/11856189/rails-server-hangs-when-started-with-foreman

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!