使用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