gpt4 book ai didi

postgresql - 多个无法从客户端接收数据 : Connection reset by peer Postgresql and Resque

转载 作者:行者123 更新时间:2023-11-29 12:32:54 27 4
gpt4 key购买 nike

我有一台运行 Postgresql 的服务器。在日志中,我在基于 resque 的“worker”框中看到这条消息,每分钟多次。有的几分钟没有消息,有的可能是 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

现在,当我进入 1.1.8.2 框查看 netstat -ntp 时,我没有看到端口 33899,其中大部分至少在现在是 40xxx 范围。这可能是推测,但我不知道为什么 Redis/Resque/Puma Rails 堆栈会打印出这些消息,更不用说这意味着什么了,即使我深入了解它。

如果它们“正常”关闭,我会恢复内存吗?

这是一件需要警惕的事情吗?

当 db box 和 worker box 都不再显示端口时,如何调试打开的旧端口?

最佳答案

此消息可能是由于 resque worker 任务在退出前未关闭数据库连接。这不是一个大问题,但大概 Postgres 正在做一些额外的工作来清理它,它会使你的日志文件变得一团糟......

一个解决方案是在 resque worker 的任务文件(包含 self.perform 定义的同一个文件)中添加一个钩子(Hook):

  def self.after_perform(*args)
ActiveRecord::Base.connection.disconnect!
end

关于postgresql - 多个无法从客户端接收数据 : Connection reset by peer Postgresql and Resque,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34751490/

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