几个月前,我终于将Heroku上的Rails应用程序升级为Cedar堆栈和Rails 3.2。由于在Cedar文档中有人建议,我使用这一行Rack::Timeout.timeout = 20
创建了一个初始化程序。一切都运行良好很长一段时间,但在过去的一周里,我突然开始收到大量Timeout::Error: execution expired
错误和相关的NoMethodError: undefined method 'result' for #<Timeout::Error: execution expired>
错误。
所有错误都出现在网站的普通部分,显示数据库的基本内容,没有进行交互式操作,在正常情况下可能需要接近20秒才能处理。
当流量增加到需要更多dynos的程度时,会发生这种情况吗?对于这些神秘错误的来源,您可以给出任何建议。
我最近对网站所做的一些更改:
ruby '1.9.2'
config/application.rb
中使用以下行设置它:{{ 1}} 更新:我查看了New Relic,Heroku Basic数据库性能存在极大问题。在过去24小时内,数据库响应时间已经徘徊在1000ms到6000ms的较高端。这是我的错误,还是Heroku的问题?