現在、プログラム内でプログラムで HTTP サーバーを生成しています。
srv = Thin::Server.start('0.0.0.0', 3000, app)
また、キープアライブ時間の設定を変更するためにどこを見ればよいかわかりません。シンサーバーはすぐには死なないので、アプリのデバッグや開発をするときに困ります。本番用にキープアライブを有効にしますが、それでも期間を制御したいと考えています。
現在、プログラム内でプログラムで HTTP サーバーを生成しています。
srv = Thin::Server.start('0.0.0.0', 3000, app)
また、キープアライブ時間の設定を変更するためにどこを見ればよいかわかりません。シンサーバーはすぐには死なないので、アプリのデバッグや開発をするときに困ります。本番用にキープアライブを有効にしますが、それでも期間を制御したいと考えています。
保留中のリクエストが処理されるのを待たないようにするには、次のように呼び出しますstop!
。
if RAKE_ENV=='production'
srv.stop
else
srv.stop!
end
# Thin::Server.stop! doesn't work immediately if there's live keep-alive connection.
# SIGINT doesn't work.
# Only SIGKILL works.
# But `abort` is a lot quicker way.
# Overridden to abort.
trap("INT") { puts " Force quit by raising intentional crash!" ;abort() }