我正在尝试解决 Rails 的内存泄漏问题。我可以通过 New Relic 看到,内存的使用量一直在增加,而从未减少。
这是一个大线程的衍生问题(Rails 应用程序中的内存不断增加),我在其中遇到了问题。我现在需要知道的只是:
Rails 内存泄漏的主要原因/因素是什么?
据我所理解:
全局变量(例如@@variable)——我没有这些
符号(我没有专门创建任何符号)
会话 - 这里应该避免什么?假设我有一个会话来跟踪一个特定用户在对站点进行文本搜索时使用的最后一个查询。我该怎么杀掉它?
“留下参考” - 这到底是什么意思?你能举个例子吗?
您可以提供的任何其他通常会造成内存泄漏的糟糕编码示例?
我想使用这些信息来查看我的代码,所以请提供示例!
最后,这会是“内存泄漏代码”吗?
ProductController
...
@last_products << Product.order("ASC").limit(5)
end
这会让@last_products 膨胀吗?