微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Sidekiq工作人员正在泄漏记忆

使用sidekiq gem – 我有使用IO.popen运行进程(git-tf克隆大存储库)的sidekiq worker,并跟踪stdout以检查克隆的进度.

当我运行该工作时,我看到sidekiq内存越来越大,直到我获得内核OOM并且进程被杀死.子进程(java进程)只占总内存的5%.

我如何调试/检查内存泄漏我在我的代码?并且sidekiq记忆是我的工作人员记忆与popen过程的总和?
有没有人有任何想法如何解决它?

编辑
这是我工人的代码
https://gist.github.com/yosy/5227250

编辑2
我运行的代码没有sidekiq,我没有内存泄漏..这是一个奇怪的sidekiq和大型存储库在tfs

解决方法

我没有发现sidekiq内存泄漏的原因,但是我发现从sidekiq得到一个方法.

修改了git-tf以使服务器命令从redis队列接受命令,它从我的代码中消除了很多复杂性.

git-tf的修改版本在这里
https://github.com/yosy/gittf

当我将修复一些错误时,我将在后面添加关于服务器命令的文档.

原文地址:https://www.jb51.cc/ruby/266939.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐