目前在我的游乐场应用程序上进行了演示,访问它结果为500 ,现在已经部署了答案中给出的修复。
错误 :
Processing by GcController#show as HTML
Completed 500 Internal Server Error in 0ms
NoMethodError (undefined method `stat' for GC:Module):
app/controllers/gc_controller.rb:4:in `show'
相反,如果你grab the Rails app from Github。
然后RAILS_ENV=production rails server
并转到/
。
你会得到:
{:count=>131, :heap_used=>193, :heap_length=>345, :heap_increment=>152, :heap_live_num=>127915, :heap_free_num=>29930, :heap_final_num=>0}
假设Heroku使用修补的GC
?
还有其他人遇到过这个吗?似乎没有关于它的任何文档。
我在本地看到了一些与Heroku相比存在冲突的内存使用行为,这就是为什么我要尝试GC.stat
。我想知道差异是否可以通过修补GC
来解释。
我也为此开了一个Heroku issue。
答案 0 :(得分:1)
慷慨地回答stolen from JD at Heroku:
Cedar默认使用1.9.2-p290。我不确定GC.stat是否在1.9.2中 随便,但它似乎不是在Heroku肯定。我们不打补丁 我们运行的Ruby版本。
我可以确认,如果您在Gemfile中指定
ruby '1.9.3'
,GC.stat
将正常工作。