Nginx調整(一)

wangwenan6發表於2014-02-28


某日,檢查業務伺服器ing.....

top.......nginx的程式哪裡去了?

ps -ef | grep nginx

發現master和workers都在,但是top中沒有找到,感覺應該是程式還在,但是沒有工作了.....

遂去日誌裡面確認了一下,發現訪問日誌沒有刷屏.........

當年作為一個菜鳥,也沒有仔細檢查錯誤日誌...........直接netstat -ant |grep 80,發現刷了很久的連線資訊,於是檢視了一下各種狀態的連線數

netstat -n | awk '/^tcp/ {++S[$NF]} END {for (a in S) print a, S[a]}

發現ESTABLISHED的數量到了15000+,TIME_WAIT
的數量到了30000+..........

於是檢查nginx的nginx.conf配置,發現nginx的配置全部都是預設配置.......

之後分析業務的特點,把nginx的一些超時時間設定得比較短
              proxy_connect_timeout 15;
              proxy_send_timeout 15;
              proxy_read_timeout 15;
              keepalive_timeout 60;
              client_body_timeout 30;
              client_header_timeout 30;
              sendfile on;
              tcp_nodelay on;
              fastcgi_connect_timeout 30;
              fastcgi_send_timeout 30;
              fastcgi_read_timeout 30;
              fastcgi_intercept_errors on;
              proxy_ignore_client_abort on;
開啟這個選項是因為有些使用者會反覆點選,傳送同一個請求,所以在忽略安全隱患的前提下,讓nginx處理這些請求

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29510932/viewspace-1097099/,如需轉載,請註明出處,否則將追究法律責任。

相關文章