我在Heroku上托管Rails 3.2应用程序,每天在Rails应用程序中获取2-3次超时。这些是而不是 H12请求超时,而是发生在Rails栈内某处的超时。因此,他们实际上在网站上生成了例外情况,并出现在我的Airbrake日志中。Heroku上的Rails应用程序中的随机超时异常
在超时发生时,它似乎是完全随机的;有时它在Formtastic之类的宝石中,或在HAML视图内,或在ActiveRecord代码中。你可以在这里看到一些回溯的例子:https://gist.github.com/dpmccabe/5238273
这个网站没有获得很多流量,并且在两个dynos上运行良好(尽管它们自动放大,这要归功于Adept Scale附加组件)。 HTTP_X_HEROKU_QUEUE_WAIT_TIME标头通常很低或为零,所以我不认为这是一个路由问题。我甚至尝试从Thin转换到Unicorn而没有任何效果(我的unicorn.rb显示在上面的要点中)。
事实上,这些超时异常似乎在整个应用程序中随机发生,并没有让我有太多的继续。我确实有New Relic,但我不确定如何去调试这个。有任何想法吗?
这发生在我们的应用程序每天一次或两次...希望我可以提供更多的帮助,但我在同一条船! – stereoscott 2013-04-18 02:36:17
+1我也看到这个,在15s/Heroku Cedar的Unicorn/Rails 3.2/Rack-Timeout。如果我能发现它们,我会按照此线程发布更多细节。 – 2013-05-15 17:56:54
只是好奇:在超时时间内你的平均吞吐量(RPM)是多少? – KendallB 2013-06-14 16:04:59