gpt4 book ai didi

ruby-on-rails - 一段时间后,Ubuntu 服务器上带有 puma 的 Rails 应用程序卡住

转载 作者:行者123 更新时间:2023-12-04 18:54:30 26 4
gpt4 key购买 nike

我已经安装了一个 Ubuntu Server VM 来托管我的应用程序。

该应用程序在我启动后运行良好。一段时间不活动后(大约 5 分钟没有请求),当我向它发送请求时,应用程序停止响应。
服务器日志:

Started GET "/" for 190.104.243.172 at 2016-05-11 13:22:46 +0000

仅此而已。它应该记录:
Started GET "/" for 190.104.243.172 at 2016-05-11 13:22:46 +0000
Processing by DashboardController#root as HTML
Completed 401 Unauthorized in 0ms (ActiveRecord: 0.0ms)
Started GET "/users/sign_in" for 190.104.243.172 at 2016-05-11 13:24:16 +0000
...

就像它一旦收到请求就不会处理它。

这是我的 puma.rb 配置文件
threads_count = Integer(ENV['MAX_THREADS'] || 16)
threads threads_count, threads_count
workers 1


preload_app!

rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'

on_worker_boot do
ActiveSupport.on_load(:active_record) do
ActiveRecord::Base.establish_connection
end
end

before_fork do
ActiveRecord::Base.connection_pool.disconnect!
end

例如,如果我将工作人员的数量更改为 2,则 5 分钟后的第一个请求有效。如果我再等 5 分钟,它就会卡住。所以肯定是 worker 挂着或没有正确装载的东西。

这就是我做 ps -aux | grep puma 时得到的结果
user 57674  1.2 11.0 1003076 189780 ?      Ssl  16:14   0:12 puma 3.4.0 (tcp://0.0.0.0:3000) [be-better-hotels]                                                                         
user 57771 0.4 14.4 1497004 247484 ? Sl 16:15 0:04 puma: cluster worker 0: 57674 [be-better-hotels]

编辑:在向挂起的服务器发出请求 30 分钟后,客户端收到 500 Internal Server Error 并且服务器显示以下错误消息:
PG::UnableToSend (SSL SYSCALL error: EOF detected):

还有一个非常大的堆栈跟踪。

最佳答案

我在纯 RAM 实例的 DO 液滴上遇到了同样的问题。我所做的一切——添加了交换。

关于ruby-on-rails - 一段时间后,Ubuntu 服务器上带有 puma 的 Rails 应用程序卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37164369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com