開啟nginx狀態監控,檢視web伺服器的併發連線數

126雲發表於2021-04-04

Nginx的ngx_http_stub_status_module提供能夠獲取Nginx自上次啟動以來的工作狀態的功能。如果需要啟用此功能的話,需要在編譯的過程中新增如下引數:“--with-http_stub_status_module”,該模組在需要放到server裡面的。

1、修改nginx.conf的檔案例如:

server {

listen 80;
server_name 192.168.1.100;

root /home/www/;

index  index.html index.htm ;

access_log off;

location ~* .(ftpquota|htaccess|asp|aspx|jsp|asa|mdb)$ {

deny  all;

}
location ~ ^/Nginxstatus/ {
stub_status on;
access_log off;
}
上面的程式碼紅色部分為nginx的監控代?。

2、重啟nginx服務。

 #/usr/local/nginx/sbin/nginx  -s  reload

3、在瀏覽器的位址列裡輸入“http://192.168.1.100/Nginxststus/”就ok了。截圖如下:

Active connections:2
server accepts handled requests
  1077  1077  2353
Reading:0 Writing:2 Waiting:0


4、解釋如下:

Active connections: 2   //nginx 正處理的活動連線數2個。

server accepts handled requests
1077 1077 2353        //nginx啟動到現在共處理了1077個連線 , 成功建立1077次握手 一般跟第一個一樣,差值為請求丟失數, 總共處理了2353次請求。
Reading: 0      //nginx 讀取到客戶端的 Header 資訊數。

Writing: 2      //nginx 返回給客戶端的 Header 資訊數。

Waiting: 0      //開啟 keep-alive 的情況下,這個值等於 active - (reading + writing),意思就是Nginx 已經處理完正在等候下一次請求指令的駐留連線。這個狀態資訊,從nginx啟動算起,包括過載配置檔案,也會清零。

附:用命令檢視nginx和apache的併發連線數。

1、檢視nginx併發程式數

ps -ef | grep nginx | wc -l
2、檢視apache的併發連線數。

ps -ef | grep httpd | wc -l
3、檢視mysql程式連線數:
ps -ef | grep mysqld -c

4、檢視Web伺服器(nginx  apache)的併發請求數及其TCP連線狀態:

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

LAST_ACK 5 (正在等待處理的請求數)
SYN_RECV 30
ESTABLISHED 1597 (正常資料傳輸狀態)
FIN_WAIT1 51
FIN_WAIT2 504
TIME_WAIT 1057 (處理完畢,等待超時結束的請求數)


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

相關文章