經過查看Nginx的併發鏈接,咱們能夠更清除的知道網站的負載狀況。Nginx併發查看有兩種方法(之因此這麼說,是由於筆者只知道兩種),一種是經過 web界面,一種是經過命令,web查看要比命令查看顯示的結果精確一些。下面介紹這兩種查看方法
No一、經過瀏覽器查看
經過web界面查看時Nginx須要開啓status模塊,也就是安裝Nginx時加上 nginx
--with-http_stub_status_module 而後配置Nginx.conf,在server點裏面加入以下內容web
location /status {
stub_status on;
access_log /usr/local/nginx/logs/status.log;
auth_basic "NginxStatus"; }瀏覽器
配置完後從新啓動Nginx後咱們能夠經過瀏覽器訪問http://localhost/status 查看,以下圖
解析:
Active connections //當前 Nginx 正處理的活動鏈接數。
server accepts handled requests //總共處理了8 個鏈接 , 成功建立 8 次握手,總共處理了500個請求。
Reading //nginx 讀取到客戶端的 Header 信息數。
Writing //nginx 返回給客戶端的 Header 信息數。
Waiting //開啓 keep-alive 的狀況下,這個值等於 active - (reading + writing),意思就是 Nginx 已經處理完正在等候下一次請求指令的駐留鏈接
No二、經過命令查看服務器
#netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'併發
解析:
CLOSED //無鏈接是活動的或正在進行
LISTEN //服務器在等待進入呼叫
SYN_RECV //一個鏈接請求已經到達,等待確認
SYN_SENT //應用已經開始,打開一個鏈接
ESTABLISHED //正常數據傳輸狀態/當前併發鏈接數
FIN_WAIT1 //應用說它已經完成
FIN_WAIT2 //另外一邊已贊成釋放
ITMED_WAIT //等待全部分組死掉
CLOSING //兩邊同時嘗試關閉
TIME_WAIT //另外一邊已初始化一個釋放
LAST_ACK //等待全部分組死掉tcp