pja*_*mer 1 postgresql resque puma
我有一个运行Postgresql的服务器.在日志中我看到这个消息为我的resque基于'工人'框,每分钟多次.几分钟没有消息,其他可能是10次.
2016-01-12 13:40:36 EST:1.1.8.2(33899):[16141]: LOG: could not receive data from client: Connection reset by peer
Run Code Online (Sandbox Code Playgroud)
现在,当我进入1.1.8.2框中观察netstat -ntp我没有看到端口33899,并且其中大部分至少在40xxx范围内.这可能是猜想,但我不知道为什么Redis/Resque/Puma Rails堆栈会打印出这些消息,更不用说这意味着即使我到底了.
如果它们"正常"关闭,我会获回记忆吗?
这是一件值得警惕的事吗?
当数据库框和工作框都不再显示端口时,如何调试打开的OLD端口?
此消息可能是由于resque工作者任务在退出之前未关闭数据库连接.这不是一个大问题,但可能Postgres正在做一些额外的工作来清理它,它会弄乱你的日志文件......
一种解决方案是在resque worker的任务文件(包含self.perform定义的同一文件)中添加一个钩子:
def self.after_perform(*args)
ActiveRecord::Base.connection.disconnect!
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3316 次 |
| 最近记录: |