Unicorn+Nginx+Rails タイムアウトの設定方法

やりたいこと

サーバーのデフォルトタイムアウトが60秒に設定されていた。
スクレイピングやバッチサーバーでは60秒以内に完了しないものが多いのでタイムアウトの時間を設定したい。

設定方法

NginxとUnicornタイムアウト値を設定する必要がある。

Unicornタイムアウト値変更(999999999999秒)

$ vi /projects/config/unicorn.rb

 ※「timeout 999999999999」を追加。無制限

Nginxのタイムアウト値変更(3600秒)

$ vi /etc/nginx/conf.d/timeout.conf

(ファイル自体を追加)
proxy_connect_timeout 3600;
proxy_send_timeout 3600;
proxy_read_timeout 3600;
send_timeout 3600;

NginxとUnicornの再起動

$ /etc/init.d/nginx restart
$ kill -9 <Unicorn マスタープロセスPID>
$ bundle exec unicorn_rails -c config/unicorn.rb -E development -D

備考

タイムアウトの設定は「Unicorn」「Nginx」の2箇所にあります。

$ grep timeout /projects/log/development_unicorn_error.log | grep killing
E, [2017-06-15T11:30:50.803344 #23658] ERROR — : worker=0 PID:23661 timeout (61s > 60s), killing
E, [2017-06-15T11:36:41.156568 #23658] ERROR — : worker=1 PID:23663 timeout (61s > 60s), killing
E, [2017-06-15T11:43:53.542174 #23658] ERROR — : worker=1 PID:23769 timeout (61s > 60s), killing
E, [2017-06-15T11:45:32.648281 #23658] ERROR — : worker=0 PID:23720 timeout (61s > 60s), killing
E, [2017-06-15T13:36:51.095563 #23658] ERROR — : worker=0 PID:23978 timeout (61s > 60s), killing

2 thoughts on “Unicorn+Nginx+Rails タイムアウトの設定方法

  1. ao kieu dep says:

    áo co dãn đang từng chỉ là thiết bị được sử
    dụng của các các chị nam giới nhưng lúc này bạn gái cũng đang sử dụng được.
    cùng rất nhiều color khác nhau thành lập thì đầy đủ người mua cũng có khá
    nhiều sự chọn lựa. áo co dãn trắng
    không còn là việc chọn lựa duy nhất.
    áo thun giờ cũng có nhiều color đáng yêu
    lắm. đáng yêu và dễ thương đồng nghĩa có dễ mến cần các
    chị em sẽ thích hơn không ít. đó chính là trang
    bị duy nhất mà níu kéo được các bạn trẻ nữ giới.
    các chị em thường dễ xiêu bởi mấy thứ đáng yêu lắm.
    bởi ko thì còn lâu mới làm cho vừa
    ý các cô gái.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です