或者更确切地说,为什么没有更好的工具来分析 ruby 中的内存,特别是 rails 应用程序?
最近,我们的 rails 应用程序(托管在 heroku 上)开始在 worker dynos 中看到很多 R14 错误。这意味着我们的内存不足。将测功机提高到 2 倍(512mb -> 1GB)只能暂时缓解问题,让我相信某处存在内存泄漏。当然,我的下一步是找到一个好的分析 gem,它可以帮助我发现泄漏的来源。
也许我只是对可用的工具一无所知,或者我只是不知道如何使用我拥有的工具。我的愿望是我可以安装一个 gem,然后运行关于内存使用统计的报告。命中端点以获取报告并不是真正可行的,因为我的内存问题与运行延迟作业的工人测功机隔离。
我看过memprof,但它只有 1.8。
我看过ruby -prof (真棒),但内存分析需要一个修补的 ruby 解释器。
我看过GC::Profiler,但我不明白如何用它找到内存泄漏。
那么,很难在 ruby 中找到内存泄漏吗?还是我以某种方式错过了重点?