这是一个很长的镜头,但我想知道是否有人有任何想法:
我在开发中使用NewRelic RPM分析我的Rails应用程序,我看到一些非常长的视图加载时间。问题是,下次加载页面时,这是一组完全不同的视图,需要很长时间才能加载。
页面加载#1
页面加载#2
我没有做任何太疯狂的事情。 Rails 4,Ruby 2,使用memcached进行部分缓存(但即使禁用缓存,我也会看到相同的错误。)
知道这是怎么回事?这不仅仅是日志的错误,因为应用程序确实需要一段时间才能呈现此页面。也不是特定于NewRelic RPM的错误 - 我在rails_panel中看到了同样的事情。
答案 0 :(得分:0)
事实证明这是垃圾收集器的一个问题。 (我知道必须有一个合理的解释。)
关于Discource Meta Forum上的这个问题有一篇很棒的帖子。 tl; dr是将RUBY_GC_MALLOC_LIMIT
设置为更高的值,以避免在渲染期间收集垃圾。