计算在heroku上运行的应用程序的内存占用量

时间:2013-07-29 14:26:12

标签: ruby-on-rails ruby heroku

我有一个应用程序会对db进行大量调用并花费大量时间。

我的目标是对db进行一次调用,并将对象保留在内存中,以便使其更快。

保留这些对象应该不是问题,因为我在我的应用程序中实现了分页。

在任何情况下,我如何衡量我记忆中的物体的“重量”?所以我知道我的应用程序不会在heroku上崩溃

修改

我无法从这个链接中找出结果:

http://www.ruby-doc.org/core-1.9.3/GC/Profiler.html#method-c-result

以下是我的结果:

GC 339 invokes.
Index    Invoke Time(sec)       Use Size(byte)     Total Size(byte)         Total Object                    GC Time(ms)
    1              17.152              7027800             12285000               614250        51.99999999999900524017

如果有人可以帮我解释或告诉我他们是如何做到的。那太棒了

1 个答案:

答案 0 :(得分:0)

您可以使用GC::Profiler来实现此目的。这将允许您在代码的一部分中分析内存使用情况和垃圾收集器活动。你只需:

GC::Profiler.enable

# code you want to profile

puts GC::Profiler.result

GC::Profiler.disable

请参阅GC::Profiler.result的文档条目,了解打印的内容。