一、查看apache當前併發訪問數:
html
#對比httpd.conf中MaxClients的數字差距多少。 netstat -an | grep ESTABLISHED | wc -l
二、查看httpd進程數(即prefork模式下Apache可以處理的併發請求數):apache
ps aux|grep httpd|wc -l
三、可使用以下參數查看數據
服務器
ps -ef|grep httpd|wc -l #1388 #統計httpd進程數,連個請求會啓動一個進程,使用於Apache服務器。 #表示Apache可以處理1388個併發請求,這個值Apache可根據負載狀況自動調整。
netstat -nat|grep -i "80"|wc -l #4341 #netstat -an會打印系統當前網絡連接狀態,而grep -i "80"是用來提取與80端口有關的鏈接的,wc -l進行鏈接數統計。 #最終返回的數字就是當前全部80端口的請求總數。
netstat -na|grep ESTABLISHED|wc -l #376 #netstat -an會打印系統當前網絡連接狀態,而grep ESTABLISHED 提取出已創建鏈接的信息。 而後wc -l統計。 #最終返回的數字就是當前全部80端口的已創建鏈接的總數。
netstat -nat||grep ESTABLISHED|wc #可查看全部創建鏈接的詳細記錄
四、查看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
其中:
SYN_RECV表示正在等待處理的請求數;
ESTABLISHED表示正常數據傳輸狀態;
TIME_WAIT表示處理完畢,等待超時結束的請求數。tcp
五、輸出每一個ip的鏈接數,以及總的各個狀態的鏈接數code
netstat -n | awk '/^tcp/ {n=split($(NF-1),array,":");if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf("%-20s %s\n", a, S[a]);++I}printf("%-20s %s\n","TOTAL_IP",I);for(a in s) printf("%-20s %s\n",a, s[a]);printf("%-20s %s\n","TOTAL_LINK",N);}'
參考:htm