Yos*_*osi 10 memory-leaks ruby-on-rails out-of-memory sidekiq git-tf
使用sidekiq gem - 我有sidekiq worker使用IO.popen运行一个进程(大型存储库的git-tf克隆)并跟踪stdout以检查克隆的进度.
当我运行worker时,我发现sidekiq内存越来越大,直到我得到内核OOM并且进程被杀死.子进程(java进程)只占总内存的5%.
我如何调试/检查我的代码中的内存泄漏?并且sidekiq内存是我的工人记忆与popen过程的总和?
有没有人知道如何解决它?
编辑
这是我的工作人员的代码 -
https://gist.github.com/yosy/5227250
编辑2
我没有sidekiq运行代码,我没有内存泄漏..这与tfs中的sidekiq和大型存储库有点奇怪
我没有找到sidekiq内存泄漏的原因,但是我找到了摆脱sidekiq的办法。
我已经修改了 git-tf 以使服务器命令接受来自 redis 队列的命令,它消除了我的代码的很多复杂性。
git-tf 的修改版本在这里: https: //github.com/yosy/gittf
稍后当我修复一些错误时,我将添加有关 sever 命令的文档。
| 归档时间: |
|
| 查看次数: |
1198 次 |
| 最近记录: |