Rails 调试器在一段时间后自动退出,并且 Ubuntu 终端选项卡挂起

Par*_*ram 4 debugging ruby-on-rails byebug

我正在使用 byebug 来调试我的 Rails 应用程序。调试器停止,但在一段时间间隔后自动继续,并给出以下内容:

【5188】!终止超时工作线程:5378

  • Worker 0 (pid: 5959) 启动,阶段:0

有时它也会使终端挂起。请帮忙!

ran*_*rol 5

我可以通过更改 config/puma.rb 中的worker_timeout 来解决这个问题。看来问题已经在使用这些行的新 Rails 6.1 项目中得到解决:

# Specifies the `worker_timeout` threshold that Puma will use to wait before
# terminating a worker in development environments.
#
worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development"
Run Code Online (Sandbox Code Playgroud)

默认值为 90 秒。

puma 文档说:

验证所有工作人员是否已在给定超时时间内签入主进程。如果没有,工作进程将重新启动。这不是请求超时,而是为了防止进程挂起或死亡。设置此值不会防止缓慢的请求。

https://www.rubydoc.info/gems/puma/Puma%2FDSL:worker_timeout