【发布时间】:2014-04-25 05:08:55
【问题描述】:
我们正在运行利用neography 进行批处理操作的sidekiq worker。
我们的批处理数组在刷新之前最多可容纳 400 次操作(我们也尝试过较小的数字)。
我们在 heroku 上遇到了 R14 内存错误,事情几乎停止了,所以我们怀疑某种内存泄漏(我已经检查过膨胀)。但是,我们一直无法弄清楚它在哪里或如何防止它。
我们尝试将所有调试内存 gem 用作 ruby-prof,[...] 没有任何结果或线索,通过 ObjectSpace 读取对象计数,甚至尝试逐行调试并在没有后台作业,但只是通过rails c 和以下命令来监控内存使用情况top -pid `ps auw | grep -i 'rails c' | head -n 1 | awk '{print $2}'` -stats RSIZE。
我尝试将我们的 ruby 版本更新到最新 (2.1.0) 但没有任何更改。
欢迎任何想法帮助我们让我们的工人更快乐!
【问题讨论】:
-
我在这里回答:stackoverflow.com/a/37146652/681074 尝试降低并发数。
标签: ruby heroku neo4j sidekiq neography