나는 Heroku에서 Rails 3.2 앱을 호스팅하고 매일 Rails 애플리케이션에서 2-3 시간 제한을받습니다. 이들은 이 아니며 H12 요청 시간 초과가 아니라 Rails 스택 내의 어딘가에서 발생하는 시간 초과입니다. 따라서 사이트에서 실제로 예외를 생성하고 Airbrake 로그에 표시됩니다.Heroku의 Rails 앱에서 임의 시간 초과 예외가 발생했습니다.
시간 초과가 발생하는 곳에서는 완전 무작위 인 것으로 보입니다. 때로는 Formtastic, HAML보기 또는 ActiveRecord 코드 내에서 볼 수 있습니다. https://gist.github.com/dpmccabe/5238273 이 사이트는 트래픽이 많지 않으며 두 개의 다이노스에서 잘 실행됩니다 (Adept Scale 애드온 덕분에 자동으로 확장되지만). HTTP_X_HEROKU_QUEUE_WAIT_TIME 헤더는 일반적으로 낮거나 0이므로 라우팅 문제라고 생각하지 않습니다. 나는 효과가없는 씬에서 유니콘으로 전환을 시도했습니다 (위의 요지에서 unicorn.rb가 표시됨).
이러한 시간 초과 예외가 응용 프로그램 전체에서 무작위로 발생한다는 사실은 계속 진행되지 않습니다. 나는 New Relic을 가지고 있지만, 이것을 디버깅하는 방법을 잘 모릅니다. 어떤 아이디어?
이것은 하루에 한두 번 우리 앱에 발생합니다 ... 나는 더 많은 도움을 줄 수 있기를 바랍니다.하지만 나는 같은 배에 있습니다! – stereoscott
+1 또한 Unicorn/Rails 3.2/Rack-Timeout (15s/Heroku Cedar)에서 이걸 보았습니다. 나는이 스레드를 따라 가서 발견 할 수 있다면 더 자세한 정보를 게시 할 것입니다. –
단지 궁금한 점 : 시간 초과 시점의 평균 처리량 (RPM)은 얼마입니까? – KendallB