中文字幕人妻中文_99精品欧美一区二区三区综合在线_精品久久久久一区二区_色月丁香_免费福利在线视频_欧美大片免费观看网址_国产伦精品一区二区三区在线播放_污污污污污污www网站免费_久久月本道色综合久久_色69激情爱久久_尹人香蕉久久99天天拍_国产美女www_亚洲国产精品无码7777一线_五月婷婷六月激情_看免费一级片_精品久久久久久成人av_在线色亚洲_女人另类性混交zo_国产精品青青在线观看爽香蕉_人人澡人人添人人爽一区二区

主頁(yè) > 知識(shí)庫(kù) > Linux 性能監(jiān)控分析

Linux 性能監(jiān)控分析

熱門標(biāo)簽:為什么地圖標(biāo)注后不顯示 好操作的電話機(jī)器人 了不起的修仙模擬器地圖標(biāo)注 400電話辦理 誠(chéng)薦翰諾科技 電話機(jī)器人客戶對(duì)話 地圖標(biāo)注機(jī)位 地圖標(biāo)注路線軟件 大連遼寧電銷機(jī)器人 谷歌美發(fā)店地圖標(biāo)注入駐
敲個(gè)命令都沒(méi)反應(yīng)。 TOP命令顯示的是一些Oracle session占用CPU資源太多。 杯具的是在服務(wù)器上連sqlplus 都進(jìn)不去了,命令都沒(méi)反應(yīng)。 只好把服務(wù)器重啟了。 重啟之后再看了一下,是一個(gè)同事測(cè)試的SQL 有問(wèn)題。 一條SQL 占用CPU 就30%。

       在研究這個(gè)問(wèn)題的時(shí)候,也google到了一些Linux 下的監(jiān)控事項(xiàng),整理如下。 

一.  Linux 性能監(jiān)控的概述

       系統(tǒng)由若干子系統(tǒng)構(gòu)成,通常修改一個(gè)子系統(tǒng)有可能影響到另外一個(gè)子系統(tǒng),甚至?xí)?dǎo)致整個(gè)系統(tǒng)不穩(wěn)定、崩潰。所以說(shuō)優(yōu)化、監(jiān)測(cè)、測(cè)試通常是連在一起的,而且是一個(gè)循環(huán)而且長(zhǎng)期的過(guò)程,通常監(jiān)測(cè)的子系統(tǒng)有以下這些:

(1).      CPU

(2).      Memory

(3).      IO

(4).      Network

       這些子系統(tǒng)互相依賴,了解這些子系統(tǒng)的特性,監(jiān)測(cè)這些子系統(tǒng)的性能參數(shù)以及及時(shí)發(fā)現(xiàn)可能會(huì)出現(xiàn)的瓶頸對(duì)系統(tǒng)優(yōu)化很有幫助。

1.1  應(yīng)用類型

       不同的系統(tǒng)用途也不同,要找到性能瓶頸需要知道系統(tǒng)跑的是什么應(yīng)用、有些什么特點(diǎn),比如 web server 對(duì)系統(tǒng)的要求肯定和 file server 不一樣,所以分清不同系統(tǒng)的應(yīng)用類型很重要,通常應(yīng)用可以分為兩種類型:

       (1)IO 相關(guān),IO 相關(guān)的應(yīng)用通常用來(lái)處理大量數(shù)據(jù),需要大量?jī)?nèi)存和存儲(chǔ),頻繁 IO 操作讀寫(xiě)數(shù)據(jù),而對(duì) CPU 的要求則較少,大部分時(shí)候 CPU 都在等待硬盤,比如,數(shù)據(jù)庫(kù)服務(wù)器、文件服務(wù)器等。

       (2)CPU 相關(guān),CPU 相關(guān)的應(yīng)用需要使用大量 CPU,比如高并發(fā)的 web/mail 服務(wù)器、圖像/視頻處理、科學(xué)計(jì)算等都可被視作 CPU 相關(guān)的應(yīng)用。

看看實(shí)際中的例子,第1個(gè)是文件服務(wù)器拷貝一個(gè)大文件時(shí)表現(xiàn)出來(lái)的特征:

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  4    140 1962724 335516 4852308  0    0   388 65024 1442  563  0  2 47 52  0
 0  4    140 1961816 335516 4853868  0    0   768 65536 1434  522  0  1 50 48  0
 0  4    140 1960788 335516 4855300  0    0   768 48640 1412  573  0  1 50 49  0
 0  4    140 1958528 335516 4857280  0    0  1024 65536 1415  521  0  1 41 57  0
 0  5    140 1957488 335516 4858884  0    0   768 81412 1504  609  0  2 50 49  0
 

第2個(gè)是 CPU 做大量計(jì)算時(shí)表現(xiàn)出來(lái)的特征:

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 4  0    140 3625096 334256 3266584  0    0     0    16 1054  470 100 0  0  0  0
 4  0    140 3625220 334264 3266576  0    0     0    12 1037  448 100 0  0  0  0
 4  0    140 3624468 334264 3266580  0    0     0   148 1160  632 100 0  0  0  0
 4  0    140 3624468 334264 3266580  0    0     0     0 1078  527 100 0  0  0  0
 4  0    140 3624712 334264 3266580  0    0     0    80 1053  501 100 0  0  0  0

       上面兩個(gè)例子最明顯的差別就是 id 一欄,代表 CPU 的空閑率,拷貝文件時(shí)候 id 維持在 50% 左右,CPU 大量計(jì)算的時(shí)候 id 基本為 0。

1.2  底線

       事先建立一個(gè)底線,如果性能監(jiān)測(cè)得到的統(tǒng)計(jì)數(shù)據(jù)跨過(guò)這條線,我們就可以說(shuō)這個(gè)系統(tǒng)性能差,如果數(shù)據(jù)能保持在線內(nèi)我們就說(shuō)性能好。建立這樣底線需要知道一些理論、額外的負(fù)載測(cè)試和系統(tǒng)管理員多年的經(jīng)驗(yàn)。如果自己沒(méi)有多年的經(jīng)驗(yàn),有一個(gè)簡(jiǎn)單劃底線的辦法就是:把這個(gè)底線建立在自己對(duì)系統(tǒng)的期望上。自己期望這個(gè)系統(tǒng)有個(gè)什么樣的性能,這是一個(gè)底線,如果沒(méi)有達(dá)到這個(gè)要求就是性能差。

1.3  監(jiān)測(cè)工具

工具

簡(jiǎn)單介紹

top

查看進(jìn)程活動(dòng)狀態(tài)以及一些系統(tǒng)狀況

vmstat

查看系統(tǒng)狀態(tài)、硬件和系統(tǒng)信息等

iostat

查看CPU 負(fù)載,硬盤狀況

sar

綜合工具,查看系統(tǒng)狀況

mpstat

查看多處理器狀況

netstat

查看網(wǎng)絡(luò)狀況

iptraf

實(shí)時(shí)網(wǎng)絡(luò)狀況監(jiān)測(cè)

tcpdump

抓取網(wǎng)絡(luò)數(shù)據(jù)包,詳細(xì)分析

mpstat

查看多處理器狀況

tcptrace

數(shù)據(jù)包分析工具

netperf

網(wǎng)絡(luò)帶寬工具

dstat

綜合工具,綜合了 vmstat, iostat, ifstat, netstat 等多個(gè)信息

二. CPU

       CPU 的占用主要取決于什么樣的資源正在 CPU 上面運(yùn)行,比如拷貝一個(gè)文件通常占用較少 CPU,因?yàn)榇蟛糠止ぷ魇怯?nbsp;DMA(Direct Memory Access)完成,只是在完成拷貝以后給一個(gè)中斷讓 CPU 知道拷貝已經(jīng)完成;科學(xué)計(jì)算通常占用較多的 CPU,大部分計(jì)算工作都需要在 CPU 上完成,內(nèi)存、硬盤等子系統(tǒng)只做暫時(shí)的數(shù)據(jù)存儲(chǔ)工作。要想監(jiān)測(cè)和理解 CPU 的性能需要知道一些的操作系統(tǒng)的基本知識(shí),比如:中斷、進(jìn)程調(diào)度、進(jìn)程上下文切換、可運(yùn)行隊(duì)列等。    這里用個(gè)例子來(lái)簡(jiǎn)單介紹一下這些概念和他們的關(guān)系,CPU每時(shí)每刻都有工作在做(進(jìn)程、線程)并且自己有一張工作清單(可運(yùn)行隊(duì)列),由老板(進(jìn)程調(diào)度)來(lái)決定他該干什么,他需要和老板溝通以便得到老板的想法并及時(shí)調(diào)整自己的工作(上下文切換),部分工作做完以后還需要及時(shí)向老板匯報(bào)(中斷),所以打工仔(CPU)除了做自己該做的工作以外,還有大量時(shí)間和精力花在溝通和匯報(bào)上。

       CPU 也是一種硬件資源,和任何其他硬件設(shè)備一樣也需要驅(qū)動(dòng)和管理程序才能使用,我們可以把內(nèi)核的進(jìn)程調(diào)度看作是 CPU 的管理程序,用來(lái)管理和分配 CPU 資源,合理安排進(jìn)程搶占 CPU,并決定哪個(gè)進(jìn)程該使用 CPU、哪個(gè)進(jìn)程該等待。操作系統(tǒng)內(nèi)核里的進(jìn)程調(diào)度主要用來(lái)調(diào)度兩類資源:進(jìn)程(或線程)和中斷,進(jìn)程調(diào)度給不同的資源分配了不同的優(yōu)先級(jí),優(yōu)先級(jí)最高的是硬件中斷,其次是內(nèi)核(系統(tǒng))進(jìn)程,最后是用戶進(jìn)程。每個(gè) CPU 都維護(hù)著一個(gè)可運(yùn)行隊(duì)列,用來(lái)存放那些可運(yùn)行的線程。線程要么在睡眠狀態(tài)(blocked 正在等待 IO)要么在可運(yùn)行狀態(tài),如果 CPU 當(dāng)前負(fù)載太高而新的請(qǐng)求不斷,就會(huì)出現(xiàn)進(jìn)程調(diào)度暫時(shí)應(yīng)付不過(guò)來(lái)的情況,這個(gè)時(shí)候就不得不把線程暫時(shí)放到可運(yùn)行隊(duì)列里。

可以從以下幾個(gè)方面監(jiān)控CPU的信息:

(1)中斷;

(2)上下文切換;

(3)可運(yùn)行隊(duì)列;

(4)CPU 利用率。

2.1 底線

通常我們期望我們的系統(tǒng)能到達(dá)以下目標(biāo):

       (1)CPU 利用率,如果 CPU 有 100% 利用率,那么應(yīng)該到達(dá)這樣一個(gè)平衡:65%-70% User Time,30%-35% System Time,0%-5% Idle Time;

       (2)上下文切換,上下文切換應(yīng)該和 CPU 利用率聯(lián)系起來(lái)看,如果能保持上面的 CPU 利用率平衡,大量的上下文切換是可以接受的;

       (3)可運(yùn)行隊(duì)列,每個(gè)可運(yùn)行隊(duì)列不應(yīng)該有超過(guò)1-3個(gè)線程(每處理器),比如:雙處理器系統(tǒng)的可運(yùn)行隊(duì)列里不應(yīng)該超過(guò)6個(gè)線程。

2.2  vmstat

       vmstat 是個(gè)查看系統(tǒng)整體性能的小工具,小巧、即使在很 heavy 的情況下也運(yùn)行良好,并且可以用時(shí)間間隔采集得到連續(xù)的性能數(shù)據(jù)。

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 2  1    140 2787980 336304 3531996  0    0     0   128 1166 5033  3  3 70 25  0
 0  1    140 2788296 336304 3531996  0    0     0     0 1194 5605  3  3 69 25  0
 0  1    140 2788436 336304 3531996  0    0     0     0 1249 8036  5  4 67 25  0
 0  1    140 2782688 336304 3531996  0    0     0     0 1333 7792  6  6 64 25  0
 3  1    140 2779292 336304 3531992  0    0     0    28 1323 7087  4  5 67 25  0

參數(shù)介紹:

(1).      r,可運(yùn)行隊(duì)列的線程數(shù),這些線程都是可運(yùn)行狀態(tài),只不過(guò) CPU 暫時(shí)不可用;

(2).      b,被 blocked 的進(jìn)程數(shù),正在等待 IO 請(qǐng)求;

(3).      in,被處理過(guò)的中斷數(shù)

(4).      cs,系統(tǒng)上正在做上下文切換的數(shù)目

(5).      us,用戶占用 CPU 的百分比

(6).      sys,內(nèi)核和中斷占用 CPU 的百分比

(7).      wa,所有可運(yùn)行的線程被 blocked 以后都在等待 IO,這時(shí)候 CPU 空閑的百分比

(8).      id,CPU 完全空閑的百分比

舉兩個(gè)現(xiàn)實(shí)中的例子來(lái)實(shí)際分析一下:

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 4  0    140 2915476 341288 3951700  0    0     0     0 1057  523 19 81  0  0  0
 4  0    140 2915724 341296 3951700  0    0     0     0 1048  546 19 81  0  0  0
 4  0    140 2915848 341296 3951700  0    0     0     0 1044  514 18 82  0  0  0
 4  0    140 2915848 341296 3951700  0    0     0    24 1044  564 20 80  0  0  0
 4  0    140 2915848 341296 3951700  0    0     0     0 1060  546 18 82  0  0  0

從上面的數(shù)據(jù)可以看出幾點(diǎn):

(1).      interrupts(in)非常高,context switch(cs)比較低,說(shuō)明這個(gè) CPU 一直在不停的請(qǐng)求資源;

(2).      user time(us)一直保持在 80% 以上,而且上下文切換較低(cs),說(shuō)明某個(gè)進(jìn)程可能一直霸占著 CPU;

(3).      run queue(r)剛好在4個(gè)。

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
14  0    140 2904316 341912 3952308  0    0     0   460 1106 9593 36 64  1  0  0
17  0    140 2903492 341912 3951780  0    0     0     0 1037 9614 35 65  1  0  0
20  0    140 2902016 341912 3952000  0    0     0     0 1046 9739 35 64  1  0  0
17  0    140 2903904 341912 3951888  0    0     0    76 1044 9879 37 63  0  0  0
16  0    140 2904580 341912 3952108  0    0     0     0 1055 9808 34 65  1  0  0

從上面的數(shù)據(jù)可以看出幾點(diǎn):

(1).      context switch(cs)比 interrupts(in)要高得多,說(shuō)明內(nèi)核不得不來(lái)回切換進(jìn)程;

(2).      進(jìn)一步觀察發(fā)現(xiàn) system time(sy)很高而 user time(us)很低,而且加上高頻度的上下文切換(cs),說(shuō)明正在運(yùn)行的應(yīng)用程序調(diào)用了大量的系統(tǒng)調(diào)用(system call);

(3).      run queue(r)在14個(gè)線程以上,按照這個(gè)測(cè)試機(jī)器的硬件配置(四核),應(yīng)該保持在12個(gè)以內(nèi)。

我上午CPU 100%時(shí)的信息:

top - 11:49:08 up 50 days, 22:25,  6 users,  load average: 59.79, 59.98, 60.50

Tasks: 200 total,  61 running, 139 sleeping,   0 stopped,   0 zombie

Cpu0  : 26.5%us, 73.5%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Cpu1  : 25.0%us, 75.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:   1939780k total,  1744412k used,   195368k free,    95704k buffers

Swap:  4401800k total,   662836k used,  3738964k free,   811124k cached

[root@localhost ~]# vmstat 2 10

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------

 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st

58  1 662836 195988  95428 810740    0    0     4   106    4    1 23  4 72  1  0

59  1 662836 195988  95448 810732    0    0     0   128  235  221 28 72  0  0  0

59  1 662836 195988  95448 810768    0    0     0     0  216  209 28 72  0  0  0

2.3  mpstat

       mpstat 和 vmstat 類似,不同的是 mpstat 可以輸出多個(gè)處理器的數(shù)據(jù)。

注意:需要安裝sysstat 包后才有這個(gè)命令,可以使用yum安裝:

       #yum install sysstat

       sysstat 包含iostat、mpstat、sar、命令。

[root@localhost gmail]# export LANG=en_US
[root@localhost gmail]# mpstat -P ALL    
Linux 2.6.18-8.el5xen (localhost.localdomain)   02/21/2011
 
10:20:16 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:16 PM  all   11.49    0.00    2.58    1.04    0.01    0.13    0.01   84.74    314.61
10:20:16 PM    0   15.73    0.00    2.56    0.55    0.02    0.23    0.01   80.89    241.09
10:20:16 PM    1    7.25    0.00    2.60    1.53    0.00    0.02    0.01   88.59     73.52
[root@localhost gmail]# mpstat -P ALL 1
Linux 2.6.18-8.el5xen (localhost.localdomain)   02/21/2011
 
10:20:18 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:19 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00    136.63
10:20:19 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     86.14
10:20:19 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     50.50
 
10:20:19 PM  CPU   %user   %nice    %sys %iowait    %irq   %soft  %steal   %idle    intr/s
10:20:20 PM  all    0.00    0.00    0.00    0.47    0.00    0.00    0.00   99.53    105.00
10:20:20 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00     79.00
10:20:20 PM    1    0.00    0.00    0.00    0.90    0.00    0.00    0.00   99.10     26.00
 

2.4  ps

查看某個(gè)程序、進(jìn)程占用了多少 CPU 資源:

[root@localhost gmail]#  while :; do ps -eo pid,ni,pri,pcpu,psr,comm | grep 'oracle'; sleep 1; done
  PID  NI PRI %CPU PSR COMMAND
 3668   0  24  0.0   0 oracle
 3670   0  21  0.0   0 oracle
 3672   0  24  0.0   0 oracle
 3674   0  23  0.0   0 oracle
 3676   0  24  0.0   1 oracle
 3678   0  23  0.0   0 oracle
 3680   0  21  0.0   1 oracle
 3682   0  24  0.0   1 oracle
 3684   0  24  0.0   0 oracle
 3686   0  21  0.0   0 oracle

三. Memory

       這里的講到的 “內(nèi)存” 包括物理內(nèi)存和虛擬內(nèi)存,虛擬內(nèi)存(Virtual Memory)把計(jì)算機(jī)的內(nèi)存空間擴(kuò)展到硬盤,物理內(nèi)存(RAM)和硬盤的一部分空間(SWAP)組合在一起作為虛擬內(nèi)存為計(jì)算機(jī)提供了一個(gè)連貫的虛擬內(nèi)存空間,好處是我們擁有的內(nèi)存 ”變多了“,可以運(yùn)行更多、更大的程序,壞處是把部分硬盤當(dāng)內(nèi)存用整體性能受到影響,硬盤讀寫(xiě)速度要比內(nèi)存慢幾個(gè)數(shù)量級(jí),并且 RAM 和 SWAP之間的交換增加了系統(tǒng)的負(fù)擔(dān)。

       在操作系統(tǒng)里,虛擬內(nèi)存被分成頁(yè),在 x86 系統(tǒng)上每個(gè)頁(yè)大小是 4KB。 Linux 內(nèi)核讀寫(xiě)虛擬內(nèi)存是以 “頁(yè)” 為單位操作的,把內(nèi)存轉(zhuǎn)移到硬盤交換空間(SWAP)和從交換空間讀取到內(nèi)存的時(shí)候都是按頁(yè)來(lái)讀寫(xiě)的。內(nèi)存和 SWAP 的這種交換過(guò)程稱為頁(yè)面交換(Paging),值得注意的是 paging 和 swapping 是兩個(gè)完全不同的概念,國(guó)內(nèi)很多參考書(shū)把這兩個(gè)概念混為一談,swapping 也翻譯成交換,在操作系統(tǒng)里是指把某程序完全交換到硬盤以騰出內(nèi)存給新程序使用,和 paging 只交換程序的部分(頁(yè)面)是兩個(gè)不同的概念。純粹的 swapping 在現(xiàn)代操作系統(tǒng)中已經(jīng)很難看到了,因?yàn)榘颜麄€(gè)程序交換到硬盤的辦法既耗時(shí)又費(fèi)力而且沒(méi)必要,現(xiàn)代操作系統(tǒng)基本都是 paging 或者 paging/swapping 混合,swapping 最初是在 Unix system V 上實(shí)現(xiàn)的。

在這里只介紹和性能監(jiān)測(cè)有關(guān)的兩個(gè)內(nèi)核進(jìn)程:kswapd 和 pdflush。

       (1)kswapd daemon 用來(lái)檢查 pages_high 和 pages_low,如果可用內(nèi)存少于 pages_low,kswapd 就開(kāi)始掃描并試圖釋放 32個(gè)頁(yè)面,并且重復(fù)掃描釋放的過(guò)程直到可用內(nèi)存大于 pages_high 為止。

       掃描的時(shí)候檢查3件事:

       1)如果頁(yè)面沒(méi)有修改,把頁(yè)放到可用內(nèi)存列表里;

       2)如果頁(yè)面被文件系統(tǒng)修改,把頁(yè)面內(nèi)容寫(xiě)到磁盤上;

       3)如果頁(yè)面被修改了,但不是被文件系統(tǒng)修改的,把頁(yè)面寫(xiě)到交換空間。

       (2)pdflush daemon 用來(lái)同步文件相關(guān)的內(nèi)存頁(yè)面,把內(nèi)存頁(yè)面及時(shí)同步到硬盤上。比如打開(kāi)一個(gè)文件,文件被導(dǎo)入到內(nèi)存里,對(duì)文件做了修改后并保存后,內(nèi)核并不馬上保存文件到硬盤,由 pdflush 決定什么時(shí)候把相應(yīng)頁(yè)面寫(xiě)入硬盤,這由一個(gè)內(nèi)核參數(shù) vm.dirty_background_ratio 來(lái)控制,比如下面的參數(shù)顯示臟頁(yè)面(dirty pages)達(dá)到所有內(nèi)存頁(yè)面10%的時(shí)候開(kāi)始寫(xiě)入硬盤。

# /sbin/sysctl -n vm.dirty_background_ratio

10

3.1  vmstat

# vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  3 252696   2432    268   7148 3604 2368  3608  2372  288  288  0  0 21 78  1
 0  2 253484   2216    228   7104 5368 2976  5372  3036  930  519  0  0  0 100  0
 0  1 259252   2616    128   6148 19784 18712 19784 18712 3821 1853  0  1  3 95  1
 1  2 260008   2188    144   6824 11824 2584 12664  2584 1347 1174 14  0  0 86  0
 2  1 262140   2964    128   5852 24912 17304 24952 17304 4737 2341 86 10  0  0  4
 
部分參數(shù)說(shuō)明:

(1).      swpd,已使用的 SWAP 空間大小,KB 為單位;

(2).      free,可用的物理內(nèi)存大小,KB 為單位;

(3).      buff,物理內(nèi)存用來(lái)緩存讀寫(xiě)操作的 buffer 大小,KB 為單位;

(4).      cache,物理內(nèi)存用來(lái)緩存進(jìn)程地址空間的 cache 大小,KB 為單位;

(5).      si,數(shù)據(jù)從 SWAP 讀取到 RAM(swap in)的大小,KB 為單位;

(6).      so,數(shù)據(jù)從 RAM 寫(xiě)到 SWAP(swap out)的大小,KB 為單位;

(7).      bi,磁盤塊從文件系統(tǒng)或 SWAP 讀取到 RAM(blocks in)的大小,block 為單位;

(8).      bo,磁盤塊從 RAM 寫(xiě)到文件系統(tǒng)或 SWAP(blocks out)的大小,block 為單位;

上面是一個(gè)頻繁讀寫(xiě)交換區(qū)的例子,可以觀察到以下幾點(diǎn):

(1).      物理可用內(nèi)存 free 基本沒(méi)什么顯著變化,swapd 逐步增加,說(shuō)明最小可用的內(nèi)存始終保持在 256MB(物理內(nèi)存大小) * 10% = 2.56MB 左右,當(dāng)臟頁(yè)達(dá)到10%的時(shí)候(vm.dirty_background_ratio = 10)就開(kāi)始大量使用 swap;

(2).      buff 穩(wěn)步減少說(shuō)明系統(tǒng)知道內(nèi)存不夠了,kwapd 正在從 buff 那里借用部分內(nèi)存;

(3).      kswapd 持續(xù)把臟頁(yè)面寫(xiě)到 swap 交換區(qū)(so),并且從 swapd 逐漸增加看出確實(shí)如此。根據(jù)上面講的 kswapd 掃描時(shí)檢查的三件事,如果頁(yè)面被修改了,但不是被文件系統(tǒng)修改的,把頁(yè)面寫(xiě)到 swap,所以這里 swapd 持續(xù)增加。

四. IO

       磁盤通常是計(jì)算機(jī)最慢的子系統(tǒng),也是最容易出現(xiàn)性能瓶頸的地方,因?yàn)榇疟P離 CPU 距離最遠(yuǎn)而且 CPU 訪問(wèn)磁盤要涉及到機(jī)械操作,比如轉(zhuǎn)軸、尋軌等。訪問(wèn)硬盤和訪問(wèn)內(nèi)存之間的速度差別是以數(shù)量級(jí)來(lái)計(jì)算的,就像1天和1分鐘的差別一樣。要監(jiān)測(cè) IO 性能,有必要了解一下基本原理和 Linux 是如何處理硬盤和內(nèi)存之間的 IO 的。

4.1 內(nèi)存頁(yè)

在第三節(jié)Memory中提到了內(nèi)存和硬盤之間的 IO 是以頁(yè)為單位來(lái)進(jìn)行的,在 Linux 系統(tǒng)上1頁(yè)的大小為 4K。可以用以下命令查看系統(tǒng)默認(rèn)的頁(yè)面大小:

$ /usr/bin/time -v date

       ...

       Page size (bytes): 4096

       ...

4.2 缺頁(yè)中斷

       Linux 利用虛擬內(nèi)存極大的擴(kuò)展了程序地址空間,使得原來(lái)物理內(nèi)存不能容下的程序也可以通過(guò)內(nèi)存和硬盤之間的不斷交換(把暫時(shí)不用的內(nèi)存頁(yè)交換到硬盤,把需要的內(nèi)存頁(yè)從硬盤讀到內(nèi)存)來(lái)贏得更多的內(nèi)存,看起來(lái)就像物理內(nèi)存被擴(kuò)大了一樣。事實(shí)上這個(gè)過(guò)程對(duì)程序是完全透明的,程序完全不用理會(huì)自己哪一部分、什么時(shí)候被交換進(jìn)內(nèi)存,一切都有內(nèi)核的虛擬內(nèi)存管理來(lái)完成。當(dāng)程序啟動(dòng)的時(shí)候,Linux 內(nèi)核首先檢查 CPU 的緩存和物理內(nèi)存,如果數(shù)據(jù)已經(jīng)在內(nèi)存里就忽略,如果數(shù)據(jù)不在內(nèi)存里就引起一個(gè)缺頁(yè)中斷(Page Fault),然后從硬盤讀取缺頁(yè),并把缺頁(yè)緩存到物理內(nèi)存里。缺頁(yè)中斷可分為主缺頁(yè)中斷(Major Page Fault)和次缺頁(yè)中斷(Minor Page Fault),要從磁盤讀取數(shù)據(jù)而產(chǎn)生的中斷是主缺頁(yè)中斷;數(shù)據(jù)已經(jīng)被讀入內(nèi)存并被緩存起來(lái),從內(nèi)存緩存區(qū)中而不是直接從硬盤中讀取數(shù)據(jù)而產(chǎn)生的中斷是次缺頁(yè)中斷。

       上面的內(nèi)存緩存區(qū)起到了預(yù)讀硬盤的作用,內(nèi)核先在物理內(nèi)存里尋找缺頁(yè),沒(méi)有的話產(chǎn)生次缺頁(yè)中斷從內(nèi)存緩存里找,如果還沒(méi)有發(fā)現(xiàn)的話就從硬盤讀取。很顯然,把多余的內(nèi)存拿出來(lái)做成內(nèi)存緩存區(qū)提高了訪問(wèn)速度,這里還有一個(gè)命中率的問(wèn)題,運(yùn)氣好的話如果每次缺頁(yè)都能從內(nèi)存緩存區(qū)讀取的話將會(huì)極大提高性能。要提高命中率的一個(gè)簡(jiǎn)單方法就是增大內(nèi)存緩存區(qū)面積,緩存區(qū)越大預(yù)存的頁(yè)面就越多,命中率也會(huì)越高。

       下面的 time 命令可以用來(lái)查看某程序第一次啟動(dòng)的時(shí)候產(chǎn)生了多少主缺頁(yè)中斷和次缺頁(yè)中斷:

$ /usr/bin/time -v date
        ...
        Major (requiring I/O) page faults: 1
        Minor (reclaiming a frame) page faults: 260
        ...
 

4.3  File Buffer Cache

       從上面的內(nèi)存緩存區(qū)(也叫文件緩存區(qū) File Buffer Cache)讀取頁(yè)比從硬盤讀取頁(yè)要快得多,所以 Linux 內(nèi)核希望能盡可能產(chǎn)生次缺頁(yè)中斷(從文件緩存區(qū)讀),并且能盡可能避免主缺頁(yè)中斷(從硬盤讀),這樣隨著次缺頁(yè)中斷的增多,文件緩存區(qū)也逐步增大,直到系統(tǒng)只有少量可用物理內(nèi)存的時(shí)候 Linux 才開(kāi)始釋放一些不用的頁(yè)。我們運(yùn)行 Linux 一段時(shí)間后會(huì)發(fā)現(xiàn)雖然系統(tǒng)上運(yùn)行的程序不多,但是可用內(nèi)存總是很少,這樣給大家造成了 Linux 對(duì)內(nèi)存管理很低效的假象,事實(shí)上 Linux 把那些暫時(shí)不用的物理內(nèi)存高效的利用起來(lái)做預(yù)存(內(nèi)存緩存區(qū))呢。下面是一臺(tái) Sun 服務(wù)器上的物理內(nèi)存和文件緩存區(qū)的情況:

$ cat /proc/meminfo
MemTotal:      8182776 kB
MemFree:       3053808 kB
Buffers:        342704 kB
Cached:        3972748 kB

       這臺(tái)服務(wù)器總共有 8GB 物理內(nèi)存(MemTotal),3GB 左右可用內(nèi)存(MemFree),343MB 左右用來(lái)做磁盤緩存(Buffers),4GB 左右用來(lái)做文件緩存區(qū)(Cached),可見(jiàn) Linux 真的用了很多物理內(nèi)存做 Cache,而且這個(gè)緩存區(qū)還可以不斷增長(zhǎng)。

4.4 頁(yè)面類型

Linux 中內(nèi)存頁(yè)面有三種類型:

(1).      Read pages,只讀頁(yè)(或代碼頁(yè)),那些通過(guò)主缺頁(yè)中斷從硬盤讀取的頁(yè)面,包括不能修改的靜態(tài)文件、可執(zhí)行文件、庫(kù)文件等。當(dāng)內(nèi)核需要它們的時(shí)候把它們讀到內(nèi)存中,當(dāng)內(nèi)存不足的時(shí)候,內(nèi)核就釋放它們到空閑列表,當(dāng)程序再次需要它們的時(shí)候需要通過(guò)缺頁(yè)中斷再次讀到內(nèi)存。

(2).      Dirty pages,臟頁(yè),指那些在內(nèi)存中被修改過(guò)的數(shù)據(jù)頁(yè),比如文本文件等。這些文件由 pdflush 負(fù)責(zé)同步到硬盤,內(nèi)存不足的時(shí)候由 kswapd 和 pdflush 把數(shù)據(jù)寫(xiě)回硬盤并釋放內(nèi)存。

(3).      Anonymous pages,匿名頁(yè),那些屬于某個(gè)進(jìn)程但是又和任何文件無(wú)關(guān)聯(lián),不能被同步到硬盤上,內(nèi)存不足的時(shí)候由 kswapd 負(fù)責(zé)將它們寫(xiě)到交換分區(qū)并釋放內(nèi)存。

4.5  IO’s Per Second(IOPS)

       每次磁盤 IO 請(qǐng)求都需要一定的時(shí)間,和訪問(wèn)內(nèi)存比起來(lái)這個(gè)等待時(shí)間簡(jiǎn)直難以忍受。在一臺(tái) 2001 年的典型 1GHz PC 上,磁盤隨機(jī)訪問(wèn)一個(gè) word 需要 8,000,000 nanosec = 8 millisec,順序訪問(wèn)一個(gè) word 需要 200 nanosec;而從內(nèi)存訪問(wèn)一個(gè) word 只需要 10 nanosec.(數(shù)據(jù)來(lái)自:Teach Yourself Programming in Ten Years)這個(gè)硬盤可以提供 125 次 IOPS(1000 ms / 8 ms)。

4.6  順序 IO 和 隨機(jī) IO

       IO 可分為順序 IO 和 隨機(jī) IO 兩種,性能監(jiān)測(cè)前需要弄清楚系統(tǒng)偏向順序 IO 的應(yīng)用還是隨機(jī) IO 應(yīng)用。

       (1)順序 IO 是指同時(shí)順序請(qǐng)求大量數(shù)據(jù),比如數(shù)據(jù)庫(kù)執(zhí)行大量的查詢、流媒體服務(wù)等,順序 IO 可以同時(shí)很快的移動(dòng)大量數(shù)據(jù)。可以這樣來(lái)評(píng)估 IOPS 的性能,用每秒讀寫(xiě) IO 字節(jié)數(shù)除以每秒讀寫(xiě) IOPS 數(shù),rkB/s 除以 r/s,wkB/s 除以 w/s. 下面顯示的是連續(xù)2秒的 IO 情況,可見(jiàn)每次 IO 寫(xiě)的數(shù)據(jù)是增加的(45060.00 / 99.00 = 455.15 KB per IO,54272.00 / 112.00 = 484.57 KB per IO)。

       相對(duì)隨機(jī) IO 而言,順序 IO 更應(yīng)該重視每次 IO 的吞吐能力(KB per IO):

$ iostat -kx 1
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    2.50   25.25    0.00   72.25
 
Device:  rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sdb       24.00 19995.00 29.00 99.00  4228.00 45060.00   770.12    45.01  539.65   7.80  99.80
 
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.00    0.00    1.00   30.67    0.00   68.33
 
Device:  rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sdb        3.00 12235.00  3.00 112.00   768.00 54272.00   957.22   144.85  576.44   8.70 100.10

       (2)隨機(jī) IO 是指隨機(jī)請(qǐng)求數(shù)據(jù),其 IO 速度不依賴于數(shù)據(jù)的大小和排列,依賴于磁盤的每秒能 IO 的次數(shù),比如 Web 服務(wù)、Mail 服務(wù)等每次請(qǐng)求的數(shù)據(jù)都很小,隨機(jī) IO 每秒同時(shí)會(huì)有更多的請(qǐng)求數(shù)產(chǎn)生,所以磁盤的每秒能 IO 多少次是關(guān)鍵。

$ iostat -kx 1
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.75    0.00    0.75    0.25    0.00   97.26
 
Device:  rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sdb        0.00    52.00  0.00 57.00     0.00   436.00    15.30     0.03    0.54   0.23   1.30
 
avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.75    0.00    0.75    0.25    0.00   97.24
 
Device:  rrqm/s   wrqm/s   r/s   w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await  svctm  %util
sdb        0.00    56.44  0.00 66.34     0.00   491.09    14.81     0.04    0.54   0.19   1.29

       按照上面的公式得出:436.00 / 57.00 = 7.65 KB per IO,491.09 / 66.34 = 7.40 KB per IO. 與順序 IO 比較發(fā)現(xiàn),隨機(jī) IO 的 KB per IO 小到可以忽略不計(jì),可見(jiàn)對(duì)于隨機(jī) IO 而言重要的是每秒能 IOPS 的次數(shù),而不是每次 IO 的吞吐能力(KB per IO)。

4.7 SWAP

       當(dāng)系統(tǒng)沒(méi)有足夠物理內(nèi)存來(lái)應(yīng)付所有請(qǐng)求的時(shí)候就會(huì)用到 swap 設(shè)備,swap 設(shè)備可以是一個(gè)文件,也可以是一個(gè)磁盤分區(qū)。不過(guò)要小心的是,使用 swap 的代價(jià)非常大。如果系統(tǒng)沒(méi)有物理內(nèi)存可用,就會(huì)頻繁 swapping,如果 swap 設(shè)備和程序正要訪問(wèn)的數(shù)據(jù)在同一個(gè)文件系統(tǒng)上,那會(huì)碰到嚴(yán)重的 IO 問(wèn)題,最終導(dǎo)致整個(gè)系統(tǒng)遲緩,甚至崩潰。swap 設(shè)備和內(nèi)存之間的 swapping 狀況是判斷 Linux 系統(tǒng)性能的重要參考,我們已經(jīng)有很多工具可以用來(lái)監(jiān)測(cè) swap 和 swapping 情況,比如:top、cat /proc/meminfo、vmstat 等:

$ cat /proc/meminfo
MemTotal:      8182776 kB
MemFree:       2125476 kB
Buffers:        347952 kB
Cached:        4892024 kB
SwapCached:        112 kB
...
SwapTotal:     4096564 kB
SwapFree:      4096424 kB
...
 
$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  2 260008   2188    144   6824 11824 2584 12664  2584 1347 1174 14  0  0 86  0
 2  1 262140   2964    128   5852 24912 17304 24952 17304 4737 2341 86 10  0  0

五. network

       網(wǎng)絡(luò)的監(jiān)測(cè)是所有 Linux 子系統(tǒng)里面最復(fù)雜的,有太多的因素在里面,比如:延遲、阻塞、沖突、丟包等,更糟的是與 Linux 主機(jī)相連的路由器、交換機(jī)、無(wú)線信號(hào)都會(huì)影響到整體網(wǎng)絡(luò)并且很難判斷是因?yàn)?nbsp;Linux 網(wǎng)絡(luò)子系統(tǒng)的問(wèn)題還是別的設(shè)備的問(wèn)題,增加了監(jiān)測(cè)和判斷的復(fù)雜度。現(xiàn)在我們使用的所有網(wǎng)卡都稱為自適應(yīng)網(wǎng)卡,意思是說(shuō)能根據(jù)網(wǎng)絡(luò)上的不同網(wǎng)絡(luò)設(shè)備導(dǎo)致的不同網(wǎng)絡(luò)速度和工作模式進(jìn)行自動(dòng)調(diào)整。我們可以通過(guò) ethtool 工具來(lái)查看網(wǎng)卡的配置和工作模式:

# /sbin/ethtool eth0
Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: g
        Wake-on: g
        Current message level: 0x000000ff (255)
        Link detected: yes

       上面給出的例子說(shuō)明網(wǎng)卡有 10baseT,100baseT 和 1000baseT 三種選擇,目前正自適應(yīng)為 100baseT(Speed: 100Mb/s)。可以通過(guò) ethtool 工具強(qiáng)制網(wǎng)卡工作在 1000baseT 下:

# /sbin/ethtool -s eth0 speed 1000 duplex full autoneg off
 

5.1  iptraf

       兩臺(tái)主機(jī)之間有網(wǎng)線(或無(wú)線)、路由器、交換機(jī)等設(shè)備,測(cè)試兩臺(tái)主機(jī)之間的網(wǎng)絡(luò)性能的一個(gè)辦法就是在這兩個(gè)系統(tǒng)之間互發(fā)數(shù)據(jù)并統(tǒng)計(jì)結(jié)果,看看吞吐量、延遲、速率如何。iptraf 就是一個(gè)很好的查看本機(jī)網(wǎng)絡(luò)吞吐量的好工具,支持文字圖形界面,很直觀。下面圖片顯示在 100 mbps 速率的網(wǎng)絡(luò)下這個(gè) Linux 系統(tǒng)的發(fā)送傳輸率有點(diǎn)慢,Outgoing rates 只有 66 mbps.

# iptraf -d eth0

5.2  netperf

       netperf 運(yùn)行在 client/server 模式下,比 iptraf 能更多樣化的測(cè)試終端的吞吐量。先在服務(wù)器端啟動(dòng) netserver:

# netserver
Starting netserver at port 12865
Starting netserver at hostname 0.0.0.0 port 12865 and family AF_UNSPEC

然后在客戶端測(cè)試服務(wù)器,執(zhí)行一次持續(xù)10秒的 TCP 測(cè)試:

# netperf -H 172.16.38.36 -l 10
TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 172.16.38.36 (172.16.38.36) port 0 AF_INET
Recv   Send    Send
Socket Socket  Message  Elapsed
Size   Size    Size     Time     Throughput
bytes  bytes   bytes    secs.    10^6bits/sec  
 
 87380  16384  16384    10.32      93.68

       從以上輸出可以看出,網(wǎng)絡(luò)吞吐量在 94mbps 左右,對(duì)于 100mbps 的網(wǎng)絡(luò)來(lái)說(shuō)這個(gè)性能算的上很不錯(cuò)。上面的測(cè)試是在服務(wù)器和客戶端位于同一個(gè)局域網(wǎng),并且局域網(wǎng)是有線網(wǎng)的情況,你也可以試試不同結(jié)構(gòu)、不同速率的網(wǎng)絡(luò),比如:網(wǎng)絡(luò)之間中間多幾個(gè)路由器、客戶端在 wi-fi、VPN 等情況。

       netperf 還可以通過(guò)建立一個(gè) TCP 連接并順序地發(fā)送數(shù)據(jù)包來(lái)測(cè)試每秒有多少 TCP 請(qǐng)求和響應(yīng)。下面的輸出顯示在 TCP requests 使用 2K 大小,responses 使用 32K 的情況下處理速率為每秒243:

 
# netperf -t TCP_RR -H 172.16.38.36 -l 10 -- -r 2048,32768
TCP REQUEST/RESPONSE TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 172.16.38.36 (172.16.38.36) port 0 AF_INET
Local /Remote
Socket Size   Request  Resp.   Elapsed  Trans.
Send   Recv   Size     Size    Time     Rate
bytes  Bytes  bytes    bytes   secs.    per sec   
 
16384  87380  2048     32768   10.00     243.03
16384  87380
 

5.3  iperf

       iperf 和 netperf 運(yùn)行方式類似,也是 server/client 模式,先在服務(wù)器端啟動(dòng) iperf:

# iperf -s -D
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
Running Iperf Server as a daemon
The Iperf daemon process ID : 5695

       然后在客戶端對(duì)服務(wù)器進(jìn)行測(cè)試,客戶端先連接到服務(wù)器端(172.16.38.36),并在30秒內(nèi)每隔5秒對(duì)服務(wù)器和客戶端之間的網(wǎng)絡(luò)進(jìn)行一次帶寬測(cè)試和采樣:

# iperf -c 172.16.38.36 -t 30 -i 5
------------------------------------------------------------
Client connecting to 172.16.38.36, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 172.16.39.100 port 49515 connected with 172.16.38.36 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0- 5.0 sec  58.8 MBytes  98.6 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  5.0-10.0 sec  55.0 MBytes  92.3 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 10.0-15.0 sec  55.1 MBytes  92.4 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 15.0-20.0 sec  55.9 MBytes  93.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 20.0-25.0 sec  55.4 MBytes  92.9 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3] 25.0-30.0 sec  55.3 MBytes  92.8 Mbits/sec
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-30.0 sec    335 MBytes  93.7 Mbits/sec
 

5.4  tcpdump 和 tcptrace

       tcmdump 和 tcptrace 提供了一種更細(xì)致的分析方法,先用 tcpdump 按要求捕獲數(shù)據(jù)包把結(jié)果輸出到某一文件,然后再用 tcptrace 分析其文件格式。這個(gè)工具組合可以提供一些難以用其他工具發(fā)現(xiàn)的信息:

# /usr/sbin/tcpdump -w network.dmp
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
511942 packets captured
511942 packets received by filter
0 packets dropped by kernel
 
# tcptrace network.dmp
1 arg remaining, starting with 'network.dmp'
Ostermann's tcptrace -- version 6.6.7 -- Thu Nov  4, 2004
 
511677 packets seen, 511487 TCP packets traced
elapsed wallclock time: 0:00:00.510291, 1002714 pkts/sec analyzed
trace file elapsed time: 0:02:35.836372
TCP connection info:
  1: zaber:54581 - boulder:111 (a2b)                   6>    5  (complete)
  2: zaber:833 - boulder:32774 (c2d)                   6>    5  (complete)
  3: zaber:pcanywherestat - 172.16.39.5:53086 (e2f)    2>    3
  4: zaber:716 - boulder:2049 (g2h)                  347>  257
  5: 172.16.39.100:58029 - zaber:12865 (i2j)           7>    5  (complete)
  6: 172.16.39.100:47592 - zaber:36814 (k2l)        255380> 255378  (reset)
  7: breakpoint:45510 - zaber:7012 (m2n)               9>    5  (complete)
  8: zaber:35813 - boulder:111 (o2p)                   6>    5  (complete)
  9: zaber:837 - boulder:32774 (q2r)                   6>    5  (complete)
 10: breakpoint:45511 - zaber:7012 (s2t)               9>    5  (complete)
 11: zaber:59362 - boulder:111 (u2v)                   6>    5  (complete)
 12: zaber:841 - boulder:32774 (w2x)                   6>    5  (complete)
 13: breakpoint:45512 - zaber:7012 (y2z)               9>    5  (complete)

       tcptrace 功能很強(qiáng)大,還可以通過(guò)過(guò)濾和布爾表達(dá)式來(lái)找出有問(wèn)題的連接,比如,找出轉(zhuǎn)播大于100 segments 的連接:

# tcptrace -f'rexmit_segs>100' network.dmp

如果發(fā)現(xiàn)連接 #10 有問(wèn)題,可以查看關(guān)于這個(gè)連接的其他信息:

# tcptrace -o10 network.dmp

下面的命令使用 tcptrace 的 slice 模式,程序自動(dòng)在當(dāng)前目錄創(chuàng)建了一個(gè) slice.dat 文件,這個(gè)文件包含了每隔15秒的轉(zhuǎn)播信息:

# tcptrace -xslice network.dmp
 
# cat slice.dat
date                segs    bytes  rexsegs rexbytes      new   active
--------------- -------- -------- -------- -------- -------- --------
16:58:50.244708    85055  4513418        0        0        6        6
16:59:05.244708   110921  5882896        0        0        0        2
16:59:20.244708   126107  6697827        0        0        1        3
16:59:35.244708   151719  8043597        0        0        0        2
16:59:50.244708    37296  1980557        0        0        0        3
17:00:05.244708       67     8828        0        0        2        3
17:00:20.244708      149    22053        0        0        1        2
17:00:35.244708       30     4080        0        0        0        1
17:00:50.244708       39     5688        0        0        0        1
17:01:05.244708       67     8828        0        0        2        3
17:01:11.081080       37     4121        0        0        1        3

標(biāo)簽:龍巖 南陽(yáng) 淘寶邀評(píng) 北海 遼陽(yáng) 延邊 眉山 大興安嶺

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux 性能監(jiān)控分析》,本文關(guān)鍵詞  Linux,性能,監(jiān)控,分析,Linux,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux 性能監(jiān)控分析》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Linux 性能監(jiān)控分析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 唐山榕丰钢铁有限公司| 天津大强钢铁有限公司| 武汉日晗精密机械有限公司| 南京利德盛机械有限公司| 大丰奥泰机械有限公司| 泰州机械设备有限公司| 上海 包装机械 有限公司| 杭州恒宏机械有限公司| 江苏汉鼎机械有限公司| 大京机械山东有限公司| 浙江荣众机械有限公司| 上海昱庄机械有限公司| 南京利德盛机械有限公司| 福建东亚机械有限公司| 绿友园林机械有限公司| 山东 包装机械有限公司| 机械进出口有限公司招聘| 南京精密机械有限公司| 深圳市精密机械有限公司| 无锡名震机械制造有限公司| 玛顿重工太仓有限公司| 宁夏天地奔牛银起设备有限公司| 重庆信鼎精密机械有限公司| 江苏海特尔机械有限公司| 青岛同三塑料机械有限公司| 全精密机械有限公司| 宁波市北仑机械制造有限公司| 宣城 机械有限公司| 济南齐力升降机械有限公司| 常州市昊博机械有限公司| 南昌中昊机械有限公司| 常州市永明机械制造有限公司| 上海华威焊割机械有限公司| 浙江天盛机械有限公司| 济南天宝钢铁有限公司| 山东国丰机械有限公司| 青岛博朗特机械设备有限公司| 山东欣弘发机械有限公司| 江西九江萍钢钢铁有限公司| 安徽同铸工程机械有限公司| 扬州意得机械有限公司| 山东华伟重工机械有限公司| 常州万高机械制造有限公司| 瑞安市瑞博机械有限公司| 中煤盘江重工有限公司| 湖州天和机械有限公司| 浙江高达机械有限公司| 南通 机械有限公司| 洛阳高峰工程机械有限公司| 昆山机械制造有限公司| 三马起重机有限公司| 常德 机械有限公司| 常州创机械有限公司| 合肥旭龙机械有限公司| 迪砂常州机械有限公司| 锦机械设备有限公司| 上海东芝机械有限公司| 山东米科思机械设备有限公司| 济宁立派工程机械有限公司| 山东机械设备有限公司怎么样| 江苏舜工机械有限公司| 郑州品创机械设备有限公司| 河南省金特振动机械有限公司| 洛阳中冶重工机械有限公司| 杭州沃沃机械有限公司| 浙江正信机械有限公司| 安徽中科光电色选机械有限公司| 安庆佳乐机械有限公司| 东风井关农业机械有限公司| 保定锐腾机械制造有限公司| 烟台山一机械有限公司| 盐城机械设备有限公司| 沈阳冶金机械有限公司| 杭州 机械有限公司| 宁波天佳塑料机械有限公司| 东莞市合辉精密机械设备有限公司| 中石化机械有限公司| 烟台市石油机械有限公司| 隆英金坛机械有限公司| 佛山市万为包装机械有限公司 | 京龙工程机械有限公司| 山东六丰机械工业有限公司| 浙江 机械 有限公司| 青岛岛宇机械有限公司| 济宁 机械有限公司| 潍坊 重工 有限公司| 合肥起重机械有限公司| 濮阳市机械有限公司| 漳州 机械有限公司| 上海五金机械有限公司| 保定市恒瑞游乐机械有限公司| 昆山市众捷塑料机械有限公司 | 江阴市三 机械有限公司| 福建兴翼机械有限公司| 正扬电子机械有限公司| 唐钢唐银钢铁有限公司| 石家庄 钢铁有限公司| 重庆机械租赁有限公司| 天津千百顺钢铁贸易有限公司| 山西 重工有限公司| 河南矿山起重机有限公司地址| 重庆阿德耐特动力机械有限公司| 浙江歌德起重机有限公司| 济南弘川包装机械有限公司| 振华真空机械有限公司| 青岛西城铸造机械有限公司| 洛阳中收机械装备有限公司| 威海机械制造有限公司| 天津 机械有限公司| 东莞市铖铭机械有限公司| 苏州原禄机械有限公司| 广东中远海运重工有限公司| 苏州毕特富精密机械有限公司 | 广州佳速精密机械有限公司| 青州康达机械有限公司| 山东曲阜 机械有限公司| 广州惠辉机械设备有限公司| 科倍隆南京机械有限公司| 盐城中热机械有限公司| 瑞安市天晟包装机械有限公司 | 山东永华机械有限公司| 潍坊铭金机械有限公司| 鞍山源鑫钢铁有限公司| 宜昌机械设备有限公司| 成都刚毅机械制造有限公司| 诸城市安泰机械有限公司| 中铁重工有限公司武汉| 杭州红磊机械有限公司| 天津机械设备有限公司| 无锡博雅德精密机械有限公司| 山东海宏重工有限公司| 海宁纺织机械有限公司| 泰田液压机械有限公司| 山东起重机有限公司| 南京儒一航空机械装备有限公司| 迪砂常州机械有限公司| 河北食品机械有限公司| 河北圣和农业机械有限公司| 山东瀚业机械有限公司| 上海集美食品机械有限公司| 山东国新起重机械有限公司| 杭州华驰机械有限公司| 郑州华隆机械有限公司| 福州 机械制造有限公司| 苏州信能精密机械有限公司| 江苏清淮机械有限公司| 辽宁富一机械有限公司| 常州龙鹏机械有限公司| 纸箱机械制造有限公司| 东方机械制造有限公司| 朝阳重工机械有限公司| 山东小康机械有限公司| 济南庚辰钢铁有限公司| 基伊埃机械设备天津有限公司 | 杭州科豪机械有限公司| 江阴古川机械有限公司| 唐山国义钢铁有限公司| 海宁弘德机械有限公司| 武安市明芳钢铁有限公司| 溧阳金纬机械有限公司| 烟台海州机械有限公司| 德国机械制造有限公司| 无锡英那威特机械发展有限公司| 张家口煤矿机械制造有限公司 | 山东万力起重机械有限公司| 常州市雪龙机械制造有限公司| 三明机械制造有限公司| 星塔机械深圳有限公司| 佛山突破机械制造有限公司| 江苏苏力机械有限公司| 江西台鑫钢铁有限公司| 迎阳无纺机械有限公司| 玉溪新兴钢铁有限公司| 徐州恒辉编织机械有限公司| 山东锐驰机械有限公司| 迪威玻璃机械有限公司| 普思信机械部件有限公司| 德国arku机械制造有限公司| 鹤壁市豫星机械制造有限公司| 郑州市机械设备有限公司| 济南包装机械械有限公司| 常州创领机械有限公司| 南通申通机械有限公司| 昆明群泰机械有限公司| 临沂华立机械有限公司| 成都金瑞建工机械有限公司| 成都康博机械有限公司| 台州嘉瑞机械有限公司| 安丰钢铁有限公司地址| 山东荣利中石油机械有限公司 | 金华机械 有限公司| 天津起重机械有限公司| 承德 机械有限公司| 无锡兆立精密机械有限公司| 广东美特机械有限公司| 上海钢铁物资有限公司| 南阳 机械 有限公司| 天津 机械 有限公司| 华力重工机械有限公司| 重庆正格农业机械有限公司| 上海沛愉机械制造有限公司| 重庆红江机械有限公司| 合肥福晟机械制造有限公司| 宏强机械设备有限公司| 阿尔法起重机有限公司| 深圳数控机械有限公司| 临沂机械制造有限公司| 东莞市途锐机械有限公司| 浙江大宇轻工机械有限公司| 济南欧亚德数控机械有限公司| 华亿机械制造有限公司| 青岛软控重工有限公司| 江苏冠宇机械设备制造有限公司 | 中交西安筑路机械有限公司| 安徽好运机械有限公司| 上海西马特制药机械有限公司| 河南豫弘重型机械有限公司| 济南天宝钢铁有限公司| 苏州福润机械有限公司| 宁波机械制造有限公司| 天津市申成包装机械有限公司| 深圳格瑞克机械有限公司| 三一汽车起重机械有限公司 | 合肥中辰轻工机械有限公司 | 苏州百勤精密机械有限公司| 首钢长治钢铁有限公司地址| 湖南嘉龙机械设备贸易有限公司 | 无锡诺亚机械有限公司| 深圳起航电商有限公司| 如东宏信机械制造有限公司| 台州机械制造有限公司| 江苏机械制造有限公司| 山东泰山机械有限公司| 重庆智茂机械制造有限公司 | 常德三一机械有限公司| 上海橡塑机械有限公司| 翰林机械制造有限公司| 无锡远方机械有限公司| 天津海特传动机械有限公司| 机械设备有限公司招聘| 江阴江达机械装备有限公司| 苏州苏安起重吊装有限公司| 上海陵城机械有限公司| 商丘机械设备有限公司| 天津江天重工有限公司| 东莞精密机械有限公司| 东风悦达起亚汽车有限公司| 南京贝隆齐机械有限公司| 江苏百事德机械有限公司| 三门峡机械有限公司| 常州富丽康精密机械有限公司| 江阴科盛机械有限公司| 江苏祥达机械制造有限公司| 潍坊大众机械有限公司| 广西玉柴重工有限公司| 杭州雅顿过滤机械有限公司| 蓬莱禄昊化工机械有限公司| 宝鸡忠诚制药机械有限公司| 鑫磊机械制造有限公司| 徐州工程机械有限公司| 盐城机械制造有限公司| 山东祥远机械有限公司| 苏州 工业机械有限公司| 绍兴三纺机械有限公司| 盐城 机械 有限公司| 广州卓远机械有限公司| 上海展仕机械设备有限公司| 三力机械制造有限公司| 常州杭钢卓信机械装备有限公司| 济南金胜星机械设备有限公司| 瀚乐电子机械有限公司| 山东天元建设机械有限公司| 德枫丹 青岛 机械有限公司招聘| 廊坊包装机械有限公司| 东莞市 机械有限公司| 郑州液压机械有限公司| 工程机械销售有限公司| 柳州工程机械有限公司| 无锡中机械有限公司| 柳州市机械有限公司| 河北机械制造有限公司| 苏州机械制造有限公司| 小松山东工程机械有限公司| 曼透平机械有限公司| 上海环球机械有限公司| 辽宁 机械制造有限公司| 常州腾睿机械有限公司| 上海石油机械有限公司| 安特精密机械有限公司| 潍坊爱地植保机械有限公司| 广州惠辉机械设备有限公司| 安阳市赛尔德精工机械有限公司| 珠海精密机械有限公司| 浙江起重机械有限公司| 北京恒机械设备有限公司| 湖南民和重工机械有限公司| 青县冀丰钢铁有限公司| 久海机械制造有限公司| 杭州胜驰机械有限公司| 吴江迈锐机械有限公司怎么样| 青岛大牧人机械有限公司招聘 | 襄阳博亚机械有限公司| 浙江康明斯机械有限公司| 江阴市豪亚机械制造有限公司| 河南耿力机械有限公司| 南阳 机械 有限公司| 常州 机械 有限公司| 装饰工程有限公司起名| 机械制造有限公司 官网| 湖州机械设备有限公司| 河北华昌机械设备有限公司| 宇进注塑机械有限公司| 南通福斯特机械制造有限公司| 汇大机械制造有限公司| 上海舜锋机械制造有限公司| 工程机械配件有限公司| 青岛云龙纺织机械有限公司| 杭州瑞东机械有限公司| 雄雄精密机械有限公司| 四川开拓建筑机械租赁有限公司| 迎阳无纺机械有限公司| 南通力威机械有限公司| 南京重霸起重设备有限公司| 常州远见机械有限公司| 东莞沃德精密机械有限公司| 深圳市机械有限公司| 广州新麦机械有限公司| 广东川德机械有限公司| 山东液压机械有限公司| 克朗斯机械有限公司| 定州市机械有限公司| 上海宝峨机械有限公司| 张家港市贝尔机械有限公司| 广州永晋机械有限公司| 山东神力起重机械有限公司| 深圳恒盛力包装机械有限公司| 东远机械昆山有限公司| 上海板换机械设备有限公司| 山东润通机械制造有限公司| 江阴西城钢铁有限公司| 成都弘邦机械有限公司| 泉州佳升机械有限公司| 伟业机械制造有限公司| 青州市晨光机械有限公司| 吉林大华机械制造有限公司| 南通昭和机械有限公司| 中核华兴达丰机械工程有限公司 | 杭州萧山机械有限公司| 青岛顺德塑料机械有限公司| 太平洋机械有限公司| 杭州定江机械有限公司| 斯特精密机械有限公司| 上海乾承机械设备有限公司| 德国机械制造有限公司| 浙江仁工机械有限公司| 东莞奥锐机械有限公司| 福建烟草机械有限公司| 鑫成机械设备有限公司| 濮阳市机械有限公司| 宁波丰州机械有限公司| 苏州宇钻机械有限公司| 安庆市机械有限公司| 四川望锦机械有限公司| 上海荣沃机械有限公司| 机械设备出口有限公司| 农业发展有限公司起名| 上海隆康机械设备有限公司| 山西万泽锦达机械制造有限公司| 上海德元机械设备有限公司 | 河北东方德源机械制造有限公司| 河南省平原矿山机械有限公司| 咸阳恒佳机械有限公司| 鞍山机械重工有限公司| 昆山美和机械有限公司| 浙江春江茶叶机械有限公司| 新乡振动机械有限公司| 浙江飞挺机械有限公司| 浙江森工木工机械有限公司| 上海盟申机械有限公司| 上海金纬挤出机械制造有限公司| 浙江南山传动机械有限公司| 杭州起重机械有限公司| 重庆自动化机械有限公司| 上海大松机械有限公司| 山东新船重工有限公司| 苏州德伊捷自动化机械有限公司 | 湖南金塔机械制造有限公司| 东莞市佐臣自动化机械有限公司 | 徐州迈特机械有限公司| 福建省晋江市和盛机械有限公司| 河北输送机械有限公司| 大连世达重工有限公司| 汶上金城机械有限公司| 江苏金梧机械有限公司| 食品有限公司起名大全| 德阳 机械有限公司| 无锡金球机械有限公司| 东泰机械制造有限公司| 沈阳透平机械有限公司| 摩德娜机械有限公司| 广州宏兴食品机械有限公司| 江苏莱宝机械制造有限公司| 上海华威焊割机械有限公司| 浙江欧迈特减速机械有限公司 | 宜兴市华鼎机械有限公司| 海宁亚东机械有限公司| 广西玉柴动力机械有限公司| 河南世博机械工程有限公司 | 广州机械自动化有限公司| 莱州华汽机械有限公司| 常州布勒机械有限公司| 速技能机械有限公司| 上海申越包装机械制造有限公司| 徐州福曼随车起重机有限公司| 北京余特包装机械有限公司| 成都康博机械有限公司| 建湖县液压机械有限公司| 梁发记机械有限公司| 川崎精密机械苏州有限公司 | 泰安越泰机械有限公司| 上海春明机械制造有限公司| 成都欧曼机械有限公司| 天津市钢铁有限公司| 无锡 钢铁贸易有限公司| 东风井关农业机械有限公司| 苏州在田机械有限公司| 义乌机械设备有限公司| 哈尔滨工程机械有限公司| 绵阳新晨动力机械有限公司| 南京创力传动机械有限公司| 泉州恒泉机械有限公司| 杭州迪迪机械有限公司| 昆山昆成机械有限公司| 天津动力机械有限公司| 唐山丰润钢铁有限公司| 顺德机械设备有限公司| 机械化工工程有限公司| 大连工程机械有限公司| 上海振华重工有限公司| 广州市赛思达机械设备有限公司| 广州卓远机械有限公司| 泰田机械制造有限公司| 山西机械制造有限公司| 沈阳六和机械有限公司| 扬州巨人机械有限公司| 布勒机械设备有限公司| 工程机械销售有限公司| 济南机械 设备有限公司| 山东欣弘发机械有限公司| 江苏仁达机械有限公司怎么样| 沈阳华盛机械有限公司| 东莞智荣机械有限公司| 南京东部精密机械有限公司| 苏州爱德克精密机械有限公司| 济南农沃机械有限公司| 安徽普源分离机械制造有限公司| 沈阳联合利邦机械有限公司| 太原重型机械有限公司| 延边鸿起实业有限公司| 杭州铁正机械有限公司| 唐山隆鑫机械有限公司| 苏州松发机械有限公司| 温州镇田机械有限公司| 三菱重工上海有限公司| 秦皇岛宏兴钢铁有限公司| 苏州市机械制造有限公司| 江苏省机械有限公司| 杭州 机械有限公司| 江苏中热机械设备有限公司怎么样 | 河南矿山机械有限公司| 青岛胜代机械有限公司| 工机械制造有限公司| 徐州宝丰钢铁有限公司| 山东元裕机械有限公司| 中机北方机械有限公司| 山西常平钢铁有限公司| 浙江飞挺机械有限公司| 上海服装机械有限公司| 银丰弹簧机械设备制造有限公司| 郑州明瑞机械设备有限公司| 宁波拓诚机械有限公司| 英侨机械制造有限公司| 湖南 机械有限公司| 宁波天竺工程机械有限公司| 浙江顶峰机械有限公司| 天津起重设备有限公司| 河北中伟机械有限公司| 温州利捷机械有限公司| 山西中宇钢铁有限公司| 山东机械设备制造有限公司| 上海祝融起重机械有限公司| 沈阳韩兆机械有限公司| 岳阳神冈起重电磁铁有限公司| 输送机械设备有限公司| 蚌埠柳工机械有限公司| 临沂金立机械有限公司| 泰恒机械制造有限公司| 沈阳联合利邦机械有限公司| 中山艾能机械有限公司| 无锡锡洲机械有限公司| 佛山市松川包装机械有限公司| 杭州川禾机械有限公司| 深圳创世纪机械有限公司| 新乡市佳盛振动机械有限公司 | 无锡工程机械有限公司| 山东建凌机械有限公司| 浙江三永机械有限公司| 福建机械设备有限公司| 郑州明瑞机械设备有限公司| 上海光塑机械制造有限公司| 常州立达纺织机械有限公司| 无锡塑机械有限公司| 念朋机械设备有限公司| 郑州永兴重工机械有限公司| 小松山东工程机械有限公司| 曲阜市机械有限公司| 东莞市 五金机械有限公司| 东莞市千岛机械制造有限公司| 三川德青工程机械有限公司| 东莞市数控机械有限公司| 广东盈钢机械有限公司| 重型机械制造有限公司| 南通安港机械有限公司| 扬州市机械制造有限公司| 浙江科尔博机械有限公司| 张家港机械制造有限公司| 上海 机械有限公司| 莱州市华弘机械有限公司| 新乡市长城机械有限公司| 广州起重机械有限公司招聘| 大方起重机械有限公司| 东莞机械设备制造有限公司| 吉川机械设备有限公司| 马鞍山 机械有限公司| 万杰食品机械有限公司| 上海鹏则机械有限公司| 山东明威起重设备有限公司| 瑞安 包装机械有限公司| 南方力劲机械有限公司| 石家庄 机械 有限公司| 威海印刷机械有限公司| 河北澳金机械设备有限公司| 杭州卡塞尔机械有限公司| 天津动力机械有限公司| 南京福能机械设备有限公司| 宁波宁塑机械有限公司| 唐山利丰机械有限公司| 徐州二川机械有限公司| 苏州金德纬机械有限公司| 湖北天和机械有限公司| 吉首市中诚制药机械有限公司| 四川高龙机械有限公司| 济宁经纬工程机械有限公司| 固达机械制造有限公司| 上海科劳机械设备有限公司| 济南森华精密机械有限公司| 金华市机械有限公司| 邢台机械制造有限公司| 江苏佳力起重机械制造有限公司| 重庆泰诺机械有限公司| 上海神威机械有限公司| 常州超通机械有限公司| 张家港市贝尔机械有限公司| 南阳机械制造有限公司| 昆山尚亦精密机械有限公司| 久隆久兴机械有限公司| 南京高立工程机械有限公司| 山东岳工机械有限公司| 河南双鑫钢铁有限公司| 苏州福润机械有限公司| 东莞市三米通用机械有限公司| 华电重工装备有限公司| 南京佳盛机械设备有限公司 | 大丰联鑫钢铁有限公司| 东莞市自动化机械有限公司| 西安环宇机械制造有限公司| 上海东泷重型机械有限公司| 天津金岸重工有限公司| 郑州市机械有限公司| 东营市机械有限公司| 机械电子制造有限公司| 东莞市科机械有限公司| 江苏包装机械有限公司| 临海市机械有限公司| 东莞市泽冠机械有限公司| 厦门 机械有限公司| 新疆 机械有限公司| 佛山市钢铁有限公司| 济南明美机械有限公司| 河南泰兴粮油机械设备有限公司 | 长春泰盟机械制造有限公司| 上海映易包装机械设备有限公司 | 北方机械制造有限公司| 河南工程机械有限公司| 河南豪丰机械制造有限公司| 河北鑫晟机械有限公司| 上海德机械设备有限公司| 六安恒源机械有限公司| 浙江红旗机械有限公司| 江苏力威机械有限公司| 河南卫华起重机有限公司| 山东大汉建设机械有限公司| 斯特精密机械有限公司| 永盛机械设备有限公司| 机械(苏州)有限公司| 常州杭钢卓信机械装备有限公司| 泰安市民乐机械制造有限公司| 杭州海兴机械有限公司| 常州市佳凯包装机械有限公司| 天津云飞机械有限公司| 山西中阳钢铁有限公司| 广东鸿业机械有限公司| 上饶中材机械有限公司| 北京石油机械有限公司| 大阳通用机械有限公司| 机械进出口有限公司| 上饶中材机械有限公司| 大丰联鑫钢铁有限公司| 招远市矿山机械有限公司| 常州市良久机械制造有限公司| 三莲机械制造有限公司| 保定市机械制造有限公司| 广东森人机械有限公司| 苏州联屹精密机械有限公司| 南京明瑞机械设备有限公司| 上海胡鑫机械有限公司| 杭州凯邦机械有限公司| 百事德机械江苏有限公司| 无锡塑机械有限公司| 芜湖科翔动力机械有限公司| 南京润森工程机械有限公司| 杭州诺迈机械有限公司| 江苏同力机械有限公司| 上海三都机械有限公司| 广州机械设备有限公司| 山东泰峰起重设备制造有限公司 | 湖北仙粮机械有限公司| 杭州青达机械有限公司| 盐城三益石化机械有限公司| 新金山钢铁有限公司| 海瑞克隧道机械有限公司| 雅康精密机械有限公司| 大连起重机有限公司| 安印刷机械有限公司| 佛山市宝捷精密机械有限公司| 青岛奥威机械有限公司| 东莞祥艺机械有限公司| 重庆蓝黛动力传动机械有限公司 | 扬州 液压机械有限公司| 北京中车重工机械有限公司| 上海海韬机械有限公司| 三川德青工程机械有限公司| 新昌县机械有限公司| 青岛弗林斯曼机械制造有限公司| 扬州恒润海洋重工有限公司| 沈阳顺达重矿机械制造有限公司 | 无锡 液压机械有限公司| 惠州机械设备有限公司| 贵州工程机械有限公司| 杭州力士机械有限公司| 济南工程机械有限公司| 杭州友高精密机械有限公司| 深圳市高郭氏精密机械有限公司| 龙南福鑫钢铁有限公司| 河南豫弘重型机械有限公司| 深圳新添润彩印机械设备有限公司| 郑州水工机械有限公司| 工程机械设备有限公司| 太仓越华精密机械配件有限公司 | 山东瑞华机械有限公司| 重庆川凯机械有限公司| 上海起重机械有限公司| 唐钢唐银钢铁有限公司| 苏州阿姆斯壮阀门机械有限公司| 唐山神州机械有限公司| 山西立恒钢铁有限公司| 河北宏川机械制造有限公司| 青岛奥硕数控机械有限公司| 上海敏杰机械有限公司| 山东胜亚机械有限公司| 大丰 机械有限公司| 苏州诚亚机械有限公司| 桂林矿山机械有限公司| 上海涵延机械有限公司| 河南安普包装机械制造有限公司| 江苏苏东化工机械有限公司| 山东福临机械制造有限公司| 东莞奥锐机械有限公司| 江阴市西城钢铁有限公司| 宁波东泰机械有限公司| 兴鑫钢铁有限公司电话| 河北龙汐机械制造有限公司| 申光洗涤机械有限公司| 江苏百事德机械有限公司| 摩德娜机械有限公司| 兰州华诚石化机械制造有限公司| 山鑫矿山机械有限公司| 常州龙鹏机械有限公司| 云南旷迪机械有限公司| 上海海韬机械有限公司| 泉州佳升机械有限公司| 无锡市康晖机械制造有限公司 | 安徽涌诚机械有限公司| 扬州中建建设机械有限公司 | 徐州恒辉编织机械有限公司| 辽宁天一重工有限公司| 宣威凤凰钢铁有限公司| 陀曼精密机械有限公司| 山西风源机械制造有限公司 | 江苏中圣机械制造有限公司| 东莞市亿德机械设备有限公司| 莱州弘宇机械有限公司| 安徽中晨机械有限公司| 中航国际钢铁贸易有限公司| 新兴重工天津国际贸易有限公司| 天津聚鑫贵泽钢铁贸易有限公司| 上海舜诺机械有限公司| 南通力福通起重机械有限公司| 长春 机械 有限公司| 江西台鑫钢铁有限公司| 无锡邦得机械有限公司| 山东恒基钢铁有限公司| 南通天成机械有限公司| 苏州市江南石化机械有限公司| 上海敏杰机械有限公司| 京西重工上海有限公司| 广州佳速精密机械有限公司| 丹阳市华泰制药机械有限公司| 秦皇岛国阳钢铁有限公司| 山东钢铁贸易有限公司| 无锡金球机械有限公司| 扬州福尔喜果蔬汁机械有限公司| 唐山市神州机械有限公司| 温州新派机械有限公司| 上海宏挺机械设备制造有限公司| 烟台 机械有限公司| 广东恒联食品机械有限公司售后 | 安徽中科光电色选机械有限公司| 浙江海蜜机械有限公司| 明毅电子机械有限公司| 青岛华牧机械有限公司| 临海市机械有限公司| 东莞市工业机械有限公司| 戴氏印刷机械有限公司| 宁波伟隆传动机械有限公司| 苏州金韦尔机械有限公司| 南通航力重工机械有限公司| 中石化机械有限公司| 起重机制造有限公司| 常州液压机械有限公司| 太原重工轨道交通设备有限公司| 温州光明印刷机械有限公司 | 青岛青宏机械制造有限公司| 佛山市柯田包装机械有限公司| 常州市昊博机械有限公司| 亨沃机械设备有限公司| 济南华飞数控机械有限公司| 东莞麒麟机械有限公司| 浙江新德宝机械有限公司| 上海市机械有限公司| 曲阜艾特机械有限公司| 南京力同重工机械有限公司| 梧州沃华机械有限公司| 泰兴石油机械有限公司| 机械制造有限公司 官网| 广州领新机械实业有限公司| 常州富丽康精密机械有限公司| 圣博液压机械有限公司| 河南力神机械有限公司| 中意机械苏州有限公司| 武汉千里马工程机械有限公司| 山东巨威机械有限公司| 温州博宇机械有限公司| 梁山机械制造有限公司| 苏州江源精密机械有限公司 | 磊蒙机械设备有限公司| 浙江山海机械有限公司| 上海机械配件有限公司| 阿特拉斯机械设备有限公司| 安宁永昌钢铁有限公司| 东莞市机械有限公司| 山东纺织机械有限公司| 南京彩途机械设备有限公司| 昆山瑞钧机械设备有限公司| 江苏利淮钢铁有限公司| 延边鸿起实业有限公司| 上海盛普机械制造有限公司| 江阴市西城钢铁有限公司| 基伊埃机械设备天津有限公司| 德丰机械制造有限公司| 上海科劳机械设备有限公司| 杭州建明机械有限公司| 珠海康信精密机械有限公司| 河南发达起重机有限公司| 泰兴机械制造有限公司| 湖北银轮机械有限公司| 厦门市机械设备有限公司| 龙文机械设备有限公司| 标准缝纫机菀坪机械有限公司| 广东中龙机械有限公司| 天津钢铁销售有限公司| 烟台金鹏矿业机械有限公司| 腾达机械设备有限公司| 常州斯塔克机械设备有限公司 | 广西中源机械有限公司| 大连盘起工业有限公司| 南通申通机械有限公司| 浙江起步儿童用品有限公司| 深圳市兴合发齿轮机械有限公司 | 郑州工程机械有限公司| 济宁市兴旺机械制造有限公司| 沧州卓鑫机械设备制造有限公司| 济南建设机械有限公司| 西子重工机械有限公司| 广州市京龙工程机械有限公司 | 新乡市东源机械有限公司| 河南豪丰机械制造有限公司| 丹东富田精工机械有限公司| 青岛奥硕数控机械有限公司| 宿迁百通机械有限公司| 绍兴金江机械有限公司| 济南格特机械设备有限公司| 天津达亿钢铁有限公司| 大同机械 有限公司| 长沙建鑫机械有限公司| 东莞市纳金机械有限公司| 兰州兰石重工有限公司| 上海建设路桥机械设备有限公司| 天津京龙工程机械有限公司| 浙江江华机械有限公司| 江苏清淮机械有限公司| 西安亿起来贸易有限公司| 东莞市鼎祥通用机械设备有限公司 | 佛山市洛德机械设备有限公司| 广东宏兴机械有限公司| 威海汇鑫化工机械有限公司| 广东鸿业机械有限公司| 安徽威萨重工机械有限公司| 南京三友机械有限公司| 河南乾坤工程机械有限公司| 凯伯精密机械有限公司| 江苏华澄重工有限公司| 上海创灵包装机械制造有限公司 | 天津重型机械有限公司| 无锡市巨神起重机有限公司| 江西中天机械有限公司| 唐山盛财钢铁有限公司| 湖北三六重工有限公司| 上海宇意机械有限公司| 河南宏基矿山机械有限公司| 三马起重机有限公司| 山东大汉建设机械有限公司| 绵阳机械制造有限公司| 浙江双鸟机械有限公司| 江苏雨花钢铁有限公司| 佛山市信虹精密机械有限公司| 上海德采包装机械有限公司| 德龙钢铁有限公司地址| 杭州杭顺机械有限公司| 宁波天佳塑料机械有限公司| 济南金梭机械制造有限公司| 浙江麒龙起重机械有限公司| 浙江科尔博机械有限公司| 杭州凯邦机械有限公司| 山东威达机械有限公司| 湖南机械制造有限公司| 唐山利军机械有限公司| 广东龙辉基业建筑机械有限公司| 广东海天机械有限公司| 起重机械制造有限公司| 武汉 机械有限公司| 江苏 机械有限公司| 河南省矿山起重机制造有限公司| 寿光 机械有限公司| 鹤壁市豫星机械制造有限公司| 江苏精密机械有限公司| 东莞市工业机械有限公司| 温州印刷机械有限公司| 常熟 机械 有限公司| 武汉金火旺机械设备有限公司| 山东天路重工有限公司| 安徽唐兴机械装备有限公司| 宁波瑞铭机械有限公司| 天翔机械制造有限公司| 珠海精密机械有限公司| 江阴荣兴机械有限公司| 重庆智茂机械制造有限公司| 河南工程机械有限公司| 佛山市晶菱玻璃机械有限公司 | 江苏汤姆包装机械有限公司| 河北机械制造有限公司| 淮安机械制造有限公司| 上海理贝包装机械有限公司| 杭州莱顿机械有限公司| 青岛越海机械有限公司| 青岛 机械制造有限公司| 诸城市富瑞德机械有限公司| 温州科瑞机械有限公司| 深圳市塑胶机械有限公司| 北京龙泰机械设备安装有限公司| 宁波佳利来机械制造有限公司| 深圳机械设备有限公司| 上海锐精密机械有限公司| 海顺机械台州有限公司| 恒兴机械设备有限公司| 山东纺织机械有限公司| 山东同洲机械制造有限公司| 浙江上洋机械有限公司| 三门峡宏基机械有限公司| 新科起重机有限公司| 浙江小伦制药机械有限公司| 上海信烨精密机械有限公司| 常州动力机械有限公司| 重庆钢实机械有限公司| 太行机械工业有限公司| 盐城市鑫益达精密机械有限公司| 新乡天丰机械有限公司| 浙江瑞志机械有限公司| 河北澳森钢铁有限公司| 德锐尔机械有限公司| 东莞正扬电子机械有限公司怎么样| 元机械制造有限公司| 郑州维科重工机械有限公司| 常州塑料机械有限公司| 富世华全能常州机械有限公司| 普瑞特机械有限公司| 济南格特机械设备有限公司| 博兴县钢铁有限公司| 邢台德龙钢铁有限公司招聘| 山东化工机械有限公司| 四平红嘴钢铁有限公司| 苏州工业园区嘉宝精密机械有限公司 | 上海巨能减速机械有限公司| 宁波立强机械有限公司| 河北明芳钢铁有限公司| 湘潭 机械制造有限公司| 科雄精密机械有限公司| 青岛永正化工机械有限公司| 上海中远海运重工有限公司| 东莞凯格精密机械有限公司| 黑龙江机械有限公司| 湖北机械设备有限公司| 上海申虎包装机械设备有限公司| 天津 津工机械有限公司| 浩强精密机械有限公司| 开封良益机械有限公司| 温州瑞达机械有限公司| 日晗精密机械有限公司| 阳谷山立克工程机械有限公司 | 苏州擎邦机械有限公司| 石嘴山钢铁有限公司| 东莞启益电器机械有限公司| 唐山宏润钢铁有限公司| 张家港和和机械有限公司| 邯郸海拓机械有限公司| 山东重型机械有限公司| 无锡海龙机械有限公司| 广州泓锋食品机械有限公司| 设备机械制造有限公司| 宁波兴波机械有限公司| 浙江康明斯机械有限公司| 江苏拓威机械有限公司| 唐山凯恒钢铁有限公司| 江苏隆达机械设备有限公司| 苏州 机械 有限公司| 精密机械加工有限公司| 恒力泰机械有限公司| 浙江双联机械有限公司| 东莞志成机械有限公司| 郑州恒科机械有限公司| 菲特压片机械有限公司| 柳州丹顺机械有限公司| 徐工机械有限公司现状| 武汉机械制造有限公司| 东莞市比奥机械有限公司| 无锡锡洲机械有限公司| 河北文丰钢铁有限公司| 廊坊机械制造有限公司| 江苏中贵重工有限公司| 江苏鸿泰钢铁有限公司| 郑州鼎盛机械设备有限公司| 河南龙昌机械制造有限公司| 北京永创通达机械设备有限公司| 攀枝花钢铁有限公司| 江苏合丰机械制造有限公司 | 浙江三叶机械有限公司| 浙江新飞机械有限公司| 江苏精明机械有限公司| 广西五丰机械有限公司| 天津包装机械有限公司| 南通佳宝机械有限公司| 三星机械制造有限公司| 常州工程机械有限公司| 南京明瑞机械设备有限公司 | 江苏腾通包装机械有限公司 | 环球工业机械有限公司| 锦州天晟重工有限公司| 宁波迪奥机械有限公司| 成都包装机械有限公司|