1

Heroku のステージング サーバーで興味深い問題に直面しています。各 post/put/delete リクエストは約 10 秒以上フリーズし、そのうちのいくつかは最終的にタイムアウトになり、Heroku H-12 タイムアウト エラーが発生します。もう 1 つの興味深い詳細: データベース レコードが更新されるため、リクエストはタイムアウト後に処理されるようです。ビッグデータは処理しません。DB の 1 つのレコードの 1 つのフィールドを更新しようとしているだけです。ローカル環境 (localhost:3000) は正常に動作しています。ブロッキング アクション (電子メールの送信、大きなクエリの処理など) はありません。キャッシング (dalli) のアクティブ化/非アクティブ化、アセットのコンパイルを試み、ステージング サーバーのインスタンスを切り替えました。staging.rb でさまざまな設定を試しました。

これをトラブルシューティングする方法について何か提案はありますか?

2012-10-08T21:32:15+00:00 app[web.1]: Started PUT "/users/151" for 67.180.34.143 at 2012-10-08 21:32:15 +0000
2012-10-08T21:32:15+00:00 app[web.1]: Processing by UsersController#update as HTML
2012-10-08T21:32:15+00:00 app[web.1]:   Parameters: {"utf8"=>"✓", "authenticity_token"=>"n4xK0Esi2zgBqSRtDTu3IEhnUAv0//bAkjLnKyk7xFk=", "user"=>{"role"=>"2", "designer_status"=>"1", "invitation_limit"=>"56"}, "commit"=>"Update", "id"=>"151"}
2012-10-08T21:32:45+00:00 heroku[router]: Error H12 (Request timeout) -> POST ziba-exygy-2.herokuapp.com/users/151 dyno=web.1 queue= wait= service=30000ms status=503 bytes=0
2012-10-08T21:32:46+00:00 app[web.1]: Redirected to https://ziba-exygy-2.herokuapp.com/users
2012-10-08T21:32:46+00:00 app[web.1]: Completed 302 Found in 30304ms (ActiveRecord: 53.7ms)
2012-10-08T21:32:46+00:00 app[web.1]: cache: [POST /users/151] invalidate, pass
2012-10-08T21:32:46+00:00 app[web.1]:   User Load (3.7ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` = 42 LIMIT 1
2012-10-08T21:32:46+00:00 app[web.1]:   User Load (12.3ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` = 151 LIMIT 1
2012-10-08T21:32:46+00:00 app[web.1]:    (2.8ms)  BEGIN
2012-10-08T21:32:46+00:00 app[web.1]:   User Exists (3.2ms)  SELECT 1 FROM `users` WHERE (`users`.`email` = BINARY 'pierre+tttttttttt@blablabla.com' AND `users`.`id` != 151) LIMIT 1
2012-10-08T21:32:46+00:00 app[web.1]:    (3.1ms)  COMMIT
2012-10-08T21:32:46+00:00 app[web.1]:    (2.7ms)  BEGIN
2012-10-08T21:32:46+00:00 app[web.1]:   CACHE (0.0ms)  SELECT 1 FROM `users` WHERE (`users`.`email` = BINARY 'pierre+tttttttttt@ blablabla.com' AND `users`.`id` != 151) LIMIT 1
2012-10-08T21:32:46+00:00 app[web.1]:    (11.6ms)  UPDATE `users` SET `invitation_limit` = 56, `updated_at` = '2012-10-08 21:32:31' WHERE `users`.`id` = 151
2012-10-08T21:32:46+00:00 app[web.1]:    (2.9ms)  COMMIT
4

1 に答える 1

0

ステージングサーバーには、ライブサーバーにあるすべてのHerokuアドオンが含まれていないことが判明しました。不足しているアドオンの1つは、FlyingSphinxでした。一部のモデルは、Sphinxがそこにあると想定し、それを使用してその動作を引き起こそうとします。

于 2012-10-11T21:05:59.470 に答える