2

我有一个应用程序对 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

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

4

1 回答 1

0

您可以通过使用GC::Profiler. 这将允许您在代码的一部分中分析内存使用情况和垃圾收集器活动。你只需这样做:

GC::Profiler.enable

# code you want to profile

puts GC::Profiler.result

GC::Profiler.disable

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

于 2013-07-29T14:37:15.463 回答