在我的 Rails 应用程序中,总对象随着每个请求而增加。GC 运行后对象未释放。我正在使用 Rails 3.2.3 和 ruby 1.9.3。
有人可以指出我正确的方向吗?从哪儿开始?
有哪些可用的工具?
我试过的工具。ObjectSpace 没有引用创建这些对象的行。Memprof 不适用于 ruby 1.9.3。Oink 没有引用创建这些对象的行。
在我的 Rails 应用程序中,总对象随着每个请求而增加。GC 运行后对象未释放。我正在使用 Rails 3.2.3 和 ruby 1.9.3。
有人可以指出我正确的方向吗?从哪儿开始?
有哪些可用的工具?
我试过的工具。ObjectSpace 没有引用创建这些对象的行。Memprof 不适用于 ruby 1.9.3。Oink 没有引用创建这些对象的行。
perftools.rb有能力提到哪些方法创建了多少对象:
CPUPROFILE_OBJECTS=1
分析对象分配而不是 cpu/wall 时间。每个样本代表在该函数内创建的一个对象。
但是,这是分析所有对象,而不仅仅是非垃圾收集的对象。此外,它有时会在我身上出现段错误。