Ruby on Rails - 如何调试"Heroku worker=x PID:x timeout (31s > 30s), killing"?



Heroku显示以下错误。

其他一切都很好。当我点击一个特定的链接,这将给我以下错误。实际上,当我点击。

时,后台有一些计算。
2016-06-25T15:14:30.617859+00:00 app[web.1]: E, [2016-06-25T15:14:30.617743 #3] ERROR -- : worker=0 PID:1111 timeout (31s > 30s), killing
2016-06-25T15:14:30.653341+00:00 app[web.1]: E, [2016-06-25T15:14:30.653226 #3] ERROR -- : reaped #<Process::Status: pid 1111 SIGKILL (signal 9)> worker=0
2016-06-25T15:14:30.667735+00:00 app[web.1]: I, [2016-06-25T15:14:30.667572 #1374]  INFO -- : worker=0 ready

这意味着页面需要超过30秒的时间来响应(这很长),并且Heroku正在终止该进程。

要么优化页面(例如使用某种形式的缓存,预计算,AJAX等),要么将计算移到后台作业

最新更新