本地電腦對服務(wù)器施壓——導(dǎo)致網(wǎng)絡(luò)堵塞

被測服務(wù)背景說明

服務(wù)調(diào)用鏈路

一個后臺的被測服務(wù)+2個數(shù)據(jù)庫


服務(wù)調(diào)用鏈.png

接口功能

單個查詢接口壓測莹妒,接口調(diào)用鏈如下:


接口調(diào)用鏈.png

一、環(huán)境介紹

1.1 壓測環(huán)境

windows本地環(huán)境忌警,部署的locust環(huán)境


壓測環(huán)境.png

1.2 被測服務(wù)環(huán)境

騰訊云申請的linux服務(wù)器,部署在測試環(huán)境中
4C 8G

二、壓測結(jié)果

2.1 TPS和RT

TPS和RT.png

2.2 服務(wù)器資源

先來一個整體的資源狀態(tài):


服務(wù)器性能.png

在服務(wù)器上筐喳,通過top命令看一下服務(wù)器資源


top.png
top - 10:32:41 up 262 days,  1:10,  4 users,  load average: 7.56, 8.87, 8.07
Tasks: 292 total,  21 running, 270 sleeping,   1 stopped,   0 zombie
Cpu(s): 61.0%us,  6.5%sy,  0.0%ni, 25.4%id,  0.0%wa,  0.0%hi,  7.1%si,  0.0%st
Mem:   8061080k total,  7056480k used,  1004600k free,   309996k buffers
Swap:        0k total,        0k used,        0k free,  4367708k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                            
 9564 ops       20   0  708m 7932 1200 S  9.9  0.1 351:04.40 ftrace_udp_agen                                                                                     
  786 ops       20   0 1225m  17m 9056 S  4.6  0.2   0:18.19 php-fpm                                                                                             
 2035 ops       20   0 1225m  16m 8984 R  4.6  0.2   0:13.24 php-fpm                                                                                             
 3058 ops       20   0 1225m  16m 9020 S  4.6  0.2   0:09.50 php-fpm                                                                                             
 3060 ops       20   0 1225m  16m 8980 S  4.6  0.2   0:09.47 php-fpm 

可以看出來的問題:

  1. CPU使用率在增加壓力之后,并沒有達(dá)到100%
  2. TCP_tw告警

應(yīng)該先看哪個呢函喉?
先看CPU為什么不能被壓滿避归。TCP_tw在不影響TCP的條件下,可以先放一放管呵。

三梳毙、問題分析

3.1看下啟動的php進(jìn)程數(shù)量

[ops@gzqc-172_24_16_88-null hk_ipo2]$ ps -ef|grep php-fpm | wc -l
64

64的數(shù)量并不是很多,為啥說不多捐下。
猜測:通過top命令看到一個php進(jìn)程大概占用0.2%的內(nèi)存账锹。
6440.002=0.512 < 4G. 不會對內(nèi)存產(chǎn)生影響

3.2 看下當(dāng)前的網(wǎng)絡(luò)鏈接狀態(tài)

dmesg
nf_conntrack: table full, dropping packet.
nf_conntrack: table full, dropping packet.
nf_conntrack: table full, dropping packet.
nf_conntrack: table full, dropping packet.

創(chuàng)建的表滿了,這里可以對表進(jìn)行配置優(yōu)化坷襟。
如何優(yōu)化奸柬,之前高老師有專欄描述過。先放放婴程,應(yīng)該不影響CPU

3.3 查一下服務(wù)器的網(wǎng)卡和隊列

[ops@gzqc-172_24_16_88-null hk_ipo2]$ ll /sys/class/net/eth0/queues/
total 0
drwxr-xr-x 2 root root 0 Jun 11 10:53 rx-0
drwxr-xr-x 2 root root 0 Jun 11 10:53 rx-1
drwxr-xr-x 2 root root 0 Jun 11 10:53 tx-0
drwxr-xr-x 2 root root 0 Jun 11 10:53 tx-1

為什么要查廓奕,能看出來啥呢?現(xiàn)在還不清楚

3.4 查詢一下服務(wù)器的網(wǎng)絡(luò)狀態(tài)

[ops@gzqc-172_24_16_88-null hk_ipo2]$ netstat |grep 9933 |grep ESTABLISHED
tcp        0      0 172.24.16.88:9933           172.18.86.167:57833         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57827         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57512         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57561         ESTABLISHED 
tcp        0   4034 172.24.16.88:9933           172.18.86.167:57521         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57574         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57722         ESTABLISHED 
tcp        0   9738 172.24.16.88:9933           172.18.86.167:57828         ESTABLISHED 
tcp        0      0 172.24.16.88:9933           172.18.86.167:57637         ESTABLISHED 
tcp        0   1849 172.24.16.88:9933           172.18.86.167:57634         ESTABLISHED 
tcp        0   6604 172.24.16.88:9933           172.18.86.167:57558         ESTABLISHED 

在當(dāng)前建立的TCP鏈接中排抬,Send-Q隊列有積壓懂从。

再查詢下,當(dāng)前服務(wù)器有多少個鏈接數(shù)

[ops@gzqc-172_24_16_88-null hk_ipo2]$ netstat |grep 9933 |grep ESTABLISHED |wc -l
272

真的非常多了~
猜測施壓端的帶寬可能堵塞蹲蒲。導(dǎo)致服務(wù)器端發(fā)送出去的請求番甩,壓力端無法接收。
導(dǎo)致服務(wù)端的Send-Q隊列有積壓届搁。服務(wù)器CPU上不去缘薛。

3.5 看一下施壓端到服務(wù)端經(jīng)過的路由

C:\Users>tracert 172.24.16.88

通過最多 30 個躍點跟蹤
到  [172.24.16.88] 的路由:

  1     1 ms    <1 毫秒   <1 毫秒 172.18.86.1
  2     1 ms    <1 毫秒   <1 毫秒 172.18.3.56
  3    <1 毫秒   <1 毫秒   <1 毫秒 172.18.3.8
  4     1 ms     1 ms     1 ms  169.254.64.114
  5     *        *        *     請求超時窍育。
  6     *        *        *     請求超時。
  7     *        4 ms     4 ms  10.200.9.190
  8     *        *        *     請求超時宴胧。
  9     4 ms     3 ms     4 ms  10.200.33.34
 10     *        *        *     請求超時漱抓。
 11     3 ms     3 ms     4 ms  queue.futuhk.com [172.24.16.88]

跟蹤完成。
image.png

大概經(jīng)過了11跳恕齐。真的是很多~

四乞娄、解決方法

那么改成用測試環(huán)境的服務(wù)器,來壓服務(wù)器試試效果把~

4.1 TPS和RT

image.png

TPS和RT曲線于之前基本是一直的

4.2 CPU

image.png

image.png
top - 15:06:31 up 262 days,  5:43,  4 users,  load average: 202.89, 182.23, 105.54
Tasks: 436 total, 205 running, 231 sleeping,   0 stopped,   0 zombie
Cpu(s): 84.5%us,  8.0%sy,  0.1%ni,  0.0%id,  0.0%wa,  0.0%hi,  7.4%si,  0.0%st
Mem:   8061080k total,  7007924k used,  1053156k free,   322696k buffers
Swap:        0k total,        0k used,        0k free,  3916020k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                            
 9564 ops       20   0  707m 7660 1200 R  2.6  0.1 375:37.06 ftrace_udp_agen                                                                                     
 3727 ops       20   0 1302m  16m 9128 R  2.2  0.2   0:36.03 php-fpm                                                                                             
10352 ops       20   0 16328  696  564 S  2.2  0.0 485:07.74 attr_agent_svr

CPU也能壓測到100%了

[ops@gzqc-172_24_16_88-null rx-0]$ ps -ef|grep php-fpm | wc -l
202

CPU使用率上來之后显歧,對應(yīng)的php服務(wù)的進(jìn)程數(shù)也上來了~

響應(yīng)時間仪或,為什么到后面還是會那么長呢?這個可能需要繼續(xù)分析原因士骤。
請看下次分析~

五范删、分析過程中用到的命令

ps -ef|grep php-fpm
ps -ef|grep php-fpm | wc -l
dmesg
ps -ef|grep php-fpm | wc -l
ll /sys/class/net/eth0/queues/
 netstat
netstat |grep 9933
 netstat |grep 9933 |grep ESTABLISHED
netstat |grep 9933 |grep ESTABLISHED |wc -l
ifconfig
top
netstat |grep 9933 |grep ESTABLISHED |wc -l
ps -ef|grep php-fpm |wc -l
vmstate 1
 pstack 26969
iftop
ipcs -m
free -m
vmstat -s | grep -i page
netstat
netstat -ntpl
netstat -ant


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請通過簡信或評論聯(lián)系作者拷肌。
  • 序言:七十年代末到旦,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子巨缘,更是在濱河造成了極大的恐慌添忘,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件若锁,死亡現(xiàn)場離奇詭異昔汉,居然都是意外死亡,警方通過查閱死者的電腦和手機拴清,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來会通,“玉大人口予,你說我怎么就攤上這事√槌蓿” “怎么了沪停?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長裳涛。 經(jīng)常有香客問我木张,道長,這世上最難降的妖魔是什么端三? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任舷礼,我火速辦了婚禮,結(jié)果婚禮上郊闯,老公的妹妹穿的比我還像新娘妻献。我一直安慰自己蛛株,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布育拨。 她就那樣靜靜地躺著谨履,像睡著了一般。 火紅的嫁衣襯著肌膚如雪熬丧。 梳的紋絲不亂的頭發(fā)上笋粟,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機與錄音析蝴,去河邊找鬼害捕。 笑死,一個胖子當(dāng)著我的面吹牛嫌变,可吹牛的內(nèi)容都是我干的吨艇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼腾啥,長吁一口氣:“原來是場噩夢啊……” “哼东涡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起倘待,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤疮跑,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后凸舵,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體祖娘,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年啊奄,在試婚紗的時候發(fā)現(xiàn)自己被綠了渐苏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡菇夸,死狀恐怖琼富,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情庄新,我是刑警寧澤鞠眉,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站择诈,受9級特大地震影響械蹋,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜羞芍,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一哗戈、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧涩金,春花似錦谱醇、人聲如沸暇仲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽奈附。三九已至,卻和暖如春煮剧,著一層夾襖步出監(jiān)牢的瞬間斥滤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工勉盅, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留佑颇,地道東北人。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓草娜,卻偏偏與公主長得像挑胸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宰闰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容