在性能壓測過程中帶寬佔用高如何去定位?

前言:壓測過程中,tps上不去,監控應用服務器cpu、內存、磁盤、網絡、線程棧等等,發現網絡傳輸數據量大,帶寬幾乎佔滿了,也就是服務器帶寬到達瓶頸點了。

服務器網卡一般都是千兆,我們可以確認一下,先用ifconfig來看下當前服務器的網卡,是eth0;另外,lo是本地環路接口。

在這裏插入圖片描述

用ethtool查詢網卡信息,下面顯示的速度是1000Mb/s,注意,這裏是Mb,不是MB.

在這裏插入圖片描述

b是bit的縮寫,稱“位”,爲一位二進制數,是計算機表示中最小單位,稱爲"信息基本單位"。如同原子構成所有物質一樣,bit構成計算機虛擬世界中所有“物質”。
B是byte的縮寫,稱“字節”,字節是信息存儲中最常用的單位,是計算機中存儲信息的“基本單位”。(1B=8b)
單位換算爲字節,除以8,是125MB/s,乘以1024,就是128000kB/s。
通過sar命令(sar -n DEV 1)查看網絡情況,rxkB/s表示每秒接收的數據量,可以看出,帶寬佔用比較高。

在這裏插入圖片描述
經和開發溝通得知,是調用公共方法,返回了很多不必要的數據(也可以tcpdump抓包,然後Wireshark分析tcpdump抓包結果)
優化方式爲:修改調用方法,只返回必須數據,減小返回的數據量。
迴歸壓測,帶寬佔用大幅降低,tps上升,達到測試指標。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章