ruby-on-rails – 为什么内存分析在ruby这么难?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 为什么内存分析在ruby这么难?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
或者说,为什么没有更好的工具来分析ruby中的内存,特别是rails应用程序?

最近我们的rails应用程序(在heroku上托管)已经开始看到工作人员中的大量R14错误.这意味着我们的内存不足.将dynos冲击到2x(512mb – > 1GB)仅暂时缓解了问题,导致我相信某处存在内存泄漏.当然,我的下一步是找到一个很好的分析宝石,可以帮助我发现泄漏的根源.

也许我只是不知道可用的工具,或者也许我不知道如何使用我的工具.我的愿望是,我可以安装一个gem,然后运行关于内存使用统计信息的报告.触发端点获取报告并不真正可行,因为我的内存问题被隔离到运行延迟作业的worker dynos.

我看过memprof,但只有1.8.

我看过ruby-prof(awesome),但内存分析需要一个补丁的ruby intepreter.

我看过GC::Profiler,但我不明白如何找到内存泄漏.

那么在Ruby中找到内存泄漏很难呢?还是我以某种方式错失了点?

解决方法

根据您的“泄漏”类型,您可以运行valgrind对ruby.可能需要重新编译.一般来说,这是很难的,因为ruby做方法分配而不触发任何事件,默认情况下,这很难跟踪.另请参阅 perftools.rb project,这有些工作在这个限制.
原文链接:https://www.f2er.com/ruby/273217.html

猜你在找的Ruby相关文章