2012-04-02 4 views
2

Nginxサーバー上で動作するはずのRailsアプリケーションで作業しています。入力に応じて、アプリケーションは要求を処理するのに非常に時間がかかるかもしれません(またはバグの場合にはハングアップする)ので、プロセスが永遠に実行されないようにしたいと考えています。クライアントがタイムアウト信号を受け取ることを保証するNginxの設定とは別に、私のアプリがそれらの要求に対して動作しなくなることを確認しなければならないかもしれないと思う。これはどこで処理すべきですか?私のRailsアプリケーション(std-libのタイムアウト/スレッドを使用)または外部(プロセスを強制終了)Rails/Nginxでのタイムアウト - ベストプラクティス

答えて

1

通常、これはラックのレイヤーでRack::Timeoutを使用して行います。

# config/initializers/timeout.rb 
Rack::Timeout.timeout = 10 # seconds