我正在使用 byebug 调试我的 rails 应用程序。调试器停止但在一段时间后自动继续并给出:
[5188]!终止超时工作人员:5378
- 工人 0 (pid: 5959) 已启动,阶段:0
有时它也会使终端挂起。请帮忙!
我正在使用 byebug 调试我的 rails 应用程序。调试器停止但在一段时间后自动继续并给出:
[5188]!终止超时工作人员:5378
有时它也会使终端挂起。请帮忙!
我可以通过更改 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"
默认值为 90 秒。
美洲狮文档说:
验证所有工作人员是否已在给定的超时时间内签入到主进程。如果不是,工作进程将重新启动。这不是请求超时,而是为了防止进程挂起或死机。设置此值不会防止缓慢的请求。
https://www.rubydoc.info/gems/puma/Puma%2FDSL:worker_timeout