日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

Linux系统资源监控--linux命令、nmon和spotlight

發(fā)布時(shí)間:2025/3/20 linux 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux系统资源监控--linux命令、nmon和spotlight 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

轉(zhuǎn)載自:http://www.cnblogs.com/hanxiaobei/p/5514544.html

?

前言:

系統(tǒng)資源監(jiān)控一般監(jiān)控系統(tǒng)的CPU,內(nèi)存,磁盤和網(wǎng)絡(luò)。系統(tǒng)分為windows和Linux。本篇主要記錄Linux。

Linux系統(tǒng)資源監(jiān)控常用命令及工具

一、常用命令:top、free、iostat、netstat、vmstat

top

top命令是Linux下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,下面詳細(xì)介紹它的使用方法

1 統(tǒng)計(jì)信息區(qū)2 top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.483 Tasks: 29 total, 1 running, 28 sleeping, 0 stopped, 0 zombie4 Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si5 Mem: 191272k total, 173656k used, 17616k free, 22052k buffers6 Swap: 192772k total, 0k used, 192772k free, 123988k cached7 進(jìn)程信息區(qū)8 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND9 1379 root 16 0 7976 2456 1980 S 0.7 1.3 0:11.03 sshd 10 14704 root 16 0 2128 980 796 R 0.7 0.5 0:02.72 top 11 1 root 16 0 1992 632 544 S 0.0 0.3 0:00.90 init 12 2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 13 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 watchdog/0

統(tǒng)計(jì)信息區(qū):
前五行是系統(tǒng)整體的統(tǒng)計(jì)信息。第一行是任務(wù)隊(duì)列信息,同 uptime 命令的執(zhí)行結(jié)果。其內(nèi)容如下:
01:06:48 當(dāng)前時(shí)間
up 1:22 系統(tǒng)運(yùn)行時(shí)間,格式為時(shí):分
1 user 當(dāng)前登錄用戶數(shù)
load average: 0.06, 0.60, 0.48 系統(tǒng)負(fù)載,即任務(wù)隊(duì)列的平均長(zhǎng)度。
三個(gè)數(shù)值分別為 1分鐘、5分鐘、15分鐘前到現(xiàn)在的平均值。
第二、三行為進(jìn)程和CPU的信息。當(dāng)有多個(gè)CPU時(shí),這些內(nèi)容可能會(huì)超過兩行。內(nèi)容如下:
Tasks: 29 total 進(jìn)程總數(shù)
1 running 正在運(yùn)行的進(jìn)程數(shù)
28 sleeping 睡眠的進(jìn)程數(shù)
0 stopped 停止的進(jìn)程數(shù)
0 zombie 僵尸進(jìn)程數(shù)
Cpu(s): 0.3% us 用戶空間占用CPU百分比
1.0% sy 內(nèi)核空間占用CPU百分比
0.0% ni 用戶進(jìn)程空間內(nèi)改變過優(yōu)先級(jí)的進(jìn)程占用CPU百分比
98.7% id 空閑CPU百分比
0.0% wa 等待輸入輸出的CPU時(shí)間百分比
最后兩行為內(nèi)存信息。內(nèi)容如下:
Mem: 191272k total 物理內(nèi)存總量
173656k used 使用的物理內(nèi)存總量
17616k free 空閑內(nèi)存總量
22052k buffers 用作內(nèi)核緩存的內(nèi)存量
Swap: 192772k total 交換區(qū)總量
0k used 使用的交換區(qū)總量
192772k free 空閑交換區(qū)總量
123988k cached 緩沖的交換區(qū)總量。

進(jìn)程信息區(qū):
統(tǒng)計(jì)信息區(qū)域的下方顯示了各個(gè)進(jìn)程的詳細(xì)信息。首先來(lái)認(rèn)識(shí)一下各列的含義。
列名 含義
PID 進(jìn)程id
USER 進(jìn)程所有者的用戶名
PR 優(yōu)先級(jí)
NI nice值。負(fù)值表示高優(yōu)先級(jí),正值表示低優(yōu)先級(jí)
VIRT 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
RES 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
SHR 共享內(nèi)存大小,單位kb
S 進(jìn)程狀態(tài)。
D=不可中斷的睡眠狀態(tài)
R=運(yùn)行
S=睡眠
T=跟蹤/停止
Z=僵尸進(jìn)程
%CPU 上次更新到現(xiàn)在的CPU時(shí)間占用百分比
%MEM 進(jìn)程使用的物理內(nèi)存百分比
TIME+ 進(jìn)程使用的CPU時(shí)間總計(jì),單位1/100秒
COMMAND 命令名/命令行

以下為默認(rèn)不展示的列名:
PPID 父進(jìn)程id
RUSER Real user name
UID 進(jìn)程所有者的用戶id
GROUP 進(jìn)程所有者的組名
TTY 啟動(dòng)進(jìn)程的終端名。不是從終端啟動(dòng)的進(jìn)程則顯示為 ?
P 最后使用的CPU,僅在多CPU環(huán)境下有意義
TIME 進(jìn)程使用的CPU時(shí)間總計(jì),單位秒
SWAP 進(jìn)程使用的虛擬內(nèi)存中,被換出的大小,單位kb。
CODE 可執(zhí)行代碼占用的物理內(nèi)存大小,單位kb
DATA 可執(zhí)行代碼以外的部分(數(shù)據(jù)段+棧)占用的物理內(nèi)存大小,單位kb
nFLT 頁(yè)面錯(cuò)誤次數(shù)
nDRT 最后一次寫入到現(xiàn)在,被修改過的頁(yè)面數(shù)。
WCHAN 若該進(jìn)程在睡眠,則顯示睡眠中的系統(tǒng)函數(shù)名
Flags 任務(wù)標(biāo)志,參考 sched.h

free

free命令可以顯示Linux系統(tǒng)中空閑的、已用的物理內(nèi)存及swap內(nèi)存,及被內(nèi)核使用的buffer。

1 [root@zhoucentos home]# free -m 2 total used free shared buffers cached 3 Mem: 1006 988 17 0 96 72 4 -/+ buffers/cache: 819 186 5 Swap: 2015 1 2014

第3行內(nèi)容代表是從系統(tǒng)的角度來(lái)統(tǒng)計(jì)的數(shù)據(jù),其中的used包含了buffers和cached
第4行內(nèi)容是代表從應(yīng)用程序的角度來(lái)統(tǒng)計(jì)的數(shù)據(jù),used是真正應(yīng)用程序占用的內(nèi)存
第3行的used = 第4行的used+第3行的buffers和cached
第5行為交換區(qū)的信息,分別是交換的總量(total),使用量(used)和有多少空閑的交換區(qū)(free)
如果是應(yīng)用服務(wù)器的話,一般只看第4行:+buffers/cache,即對(duì)應(yīng)用程序來(lái)說(shuō)free的內(nèi)存太少了,也是該考慮優(yōu)化程序或加內(nèi)存了。

iostat

可以用iostat工具查看進(jìn)程IO請(qǐng)求下發(fā)的數(shù)量、系統(tǒng)處理IO請(qǐng)求的耗時(shí),進(jìn)而分析進(jìn)程與操作系統(tǒng)的交互過程中IO方面是否存在瓶頸。
下面通過iostat命令使用實(shí)例,說(shuō)明使用iostat查看IO請(qǐng)求下發(fā)情況、系統(tǒng)IO處理能力的方法,以及命令執(zhí)行結(jié)果中各字段的含義。
1.不加選項(xiàng)執(zhí)行iostat

?

1 linux # iostat 2 Linux 2.6.16.60-0.21-smp (linux) 06/12/12 3 4 avg-cpu: %user %nice %system %iowait %steal %idle 5 0.07 0.00 0.05 0.06 0.00 99.81 6 7 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn 8 sda 0.58 9.95 37.47 6737006 25377400 9 sdb 0.00 0.00 0.00 824 0

?

單獨(dú)執(zhí)行iostat,顯示的結(jié)果為從系統(tǒng)開機(jī)到當(dāng)前執(zhí)行時(shí)刻的統(tǒng)計(jì)信息。以上輸出中,除最上面指示系統(tǒng)版本、主機(jī)名和日期的一行外,另有兩部分:

avg-cpu: 總體cpu使用情況統(tǒng)計(jì)信息,對(duì)于多核cpu,這里為所有cpu的平均值
Device: 各磁盤設(shè)備的IO統(tǒng)計(jì)信息
對(duì)于cpu統(tǒng)計(jì)信息一行,我們主要看iowait的值,它指示cpu用于等待io請(qǐng)求完成的時(shí)間。Device中各列含義如下:
? Device: 以sdX形式顯示的設(shè)備名稱
? tps: 每秒進(jìn)程下發(fā)的IO讀、寫請(qǐng)求數(shù)量
? Blk_read/s: 每秒讀扇區(qū)數(shù)量(一扇區(qū)為512bytes)
? Blk_wrtn/s: 每秒寫扇區(qū)數(shù)量
? Blk_read: 取樣時(shí)間間隔內(nèi)讀扇區(qū)總數(shù)量
? Blk_wrtn: 取樣時(shí)間間隔內(nèi)寫扇區(qū)總數(shù)量
我們可以使用-c選項(xiàng)單獨(dú)顯示avg-cpu部分的結(jié)果,使用-d選項(xiàng)單獨(dú)顯示Device部分的信息。
2.指定采樣時(shí)間間隔與采樣次數(shù)
linux # iostat -d 1 2

1 Linux 2.6.16.60-0.21-smp (linux) 06/13/12 2 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn 3 sda 0.55 8.93 36.27 6737086 27367728 4 sdb 0.00 0.00 0.00 928 0 5 6 Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn 7 sda 2.00 0.00 72.00 0 72 8 sdb 0.00 0.00 0.00 0 0

以上命令輸出Device的信息,采樣時(shí)間為1秒,采樣2次,若不指定采樣次數(shù),則iostat會(huì)一直輸出采樣信息,直到按”ctrl+c”退出命令。
注意,第1次采樣信息與單獨(dú)執(zhí)行iostat的效果一樣,為從系統(tǒng)開機(jī)到當(dāng)前執(zhí)行時(shí)刻的統(tǒng)計(jì)信息。
3.以kB為單位顯示讀寫信息(-k選項(xiàng))
我們可以使用-k或-M選項(xiàng),指定iostat的部分輸出結(jié)果以kB或MB為單位,而不是以扇區(qū)數(shù)為單位

1 linux # iostat -d -k 2 Linux 2.6.16.60-0.21-smp (linux) 06/13/12 3 4 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn 5 sda 0.55 4.46 18.12 3368543 13686096 6 sdb 0.00 0.00 0.00 464 0

以上輸出中,kB_read/s、kB_wrtn/s、kB_read和kB_wrtn的值均以kB為單位,相比以扇區(qū)數(shù)為單位,這里的值為原值的一半(1kB=512bytes*2)
4.更詳細(xì)的io統(tǒng)計(jì)信息(-x選項(xiàng))
為顯示更詳細(xì)的io設(shè)備統(tǒng)計(jì)信息,可以使用-x選項(xiàng),在分析io瓶頸時(shí),一般都會(huì)開啟-x選項(xiàng):?

1 linux # iostat -x -k -d 1 2 Linux 2.6.16.60-0.21-smp (linux) 06/13/12 3 4 …… 5 Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util 6 sda 0.00 9915.00 1.00 90.00 4.00 34360.00 755.25 11.79 120.57 6.33 57.60

以上各列的含義如下:
? rrqm/s: 每秒對(duì)該設(shè)備的讀請(qǐng)求被合并次數(shù),文件系統(tǒng)會(huì)對(duì)讀取同塊(block)的請(qǐng)求進(jìn)行合并
? wrqm/s: 每秒對(duì)該設(shè)備的寫請(qǐng)求被合并次數(shù)
? r/s: 每秒完成的讀次數(shù)
? w/s: 每秒完成的寫次數(shù)
? rkB/s: 每秒讀數(shù)據(jù)量(kB為單位)
? wkB/s: 每秒寫數(shù)據(jù)量(kB為單位)
? avgrq-sz:平均每次IO操作的數(shù)據(jù)量(扇區(qū)數(shù)為單位)
? avgqu-sz: 平均等待處理的IO請(qǐng)求隊(duì)列長(zhǎng)度
? await: 平均每次IO請(qǐng)求等待時(shí)間(包括等待時(shí)間和處理時(shí)間,毫秒為單位)
? svctm: 平均每次IO請(qǐng)求的處理時(shí)間(毫秒為單位)
? %util: 采用周期內(nèi)用于IO操作的時(shí)間比率,即IO隊(duì)列非空的時(shí)間比率
對(duì)于以上示例輸出,我們可以獲取到以下信息:
1. 每秒向磁盤上寫30M左右數(shù)據(jù)(wkB/s值)
2. 每秒有91次IO操作(r/s+w/s),其中以寫操作為主體
3. 平均每次IO請(qǐng)求等待處理的時(shí)間為120.57毫秒,處理耗時(shí)為6.33毫秒
4. 等待處理的IO請(qǐng)求隊(duì)列中,平均有11.79個(gè)請(qǐng)求駐留
以上各值之間也存在聯(lián)系,我們可以由一些值計(jì)算出其他數(shù)值,例如:
util = (r/s+w/s) * (svctm/1000)
對(duì)于上面的例子有:util = (1+90)*(6.33/1000) = 0.57603

?netstat

Netstat 命令用于顯示各種網(wǎng)絡(luò)相關(guān)信息,如網(wǎng)絡(luò)連接,路由表,接口狀態(tài) (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。

執(zhí)行netstat后,其輸出結(jié)果為:

1 Active Internet connections (w/o servers)2 Proto Recv-Q Send-Q Local Address Foreign Address State3 tcp 0 2 210.34.6.89:telnet 210.34.6.96:2873 ESTABLISHED4 tcp 296 0 210.34.6.89:1165 210.34.6.84:netbios-ssn ESTABLISHED5 tcp 0 0 localhost.localdom:9001 localhost.localdom:1162 ESTABLISHED6 tcp 0 0 localhost.localdom:1162 localhost.localdom:9001 ESTABLISHED7 tcp 0 80 210.34.6.89:1161 210.34.6.10:netbios-ssn CLOSE8 9 Active UNIX domain sockets (w/o servers) 10 Proto RefCnt Flags Type State I-Node Path 11 unix 1 [ ] STREAM CONNECTED 16178 @000000dd 12 unix 1 [ ] STREAM CONNECTED 16176 @000000dc 13 unix 9 [ ] DGRAM 5292 /dev/log 14 unix 1 [ ] STREAM CONNECTED 16182 @000000df

從整體上看,netstat的輸出結(jié)果可以分為兩個(gè)部分:

1、Active Internet connections,稱為有源TCP連接,其中"Recv-Q"和"Send-Q"指%0A的是接收隊(duì)列和發(fā)送隊(duì)列。這些數(shù)字一般都應(yīng)該是0。如果不是則表示軟件包正在隊(duì)列中堆積。這種情況只能在非常少的情況見到。

2、Active UNIX domain sockets,稱為有源Unix域套接口(和網(wǎng)絡(luò)套接字一樣,但是只能用于本機(jī)通信,性能可以提高一倍)。

Proto顯示連接使用的協(xié)議,RefCnt表示連接到本套接口上的進(jìn)程號(hào),Types顯示套接口的類型,State顯示套接口當(dāng)前的狀態(tài),Path表示連接到套接口的其它進(jìn)程使用的路徑名。

常見參數(shù):

-a (all)顯示所有選項(xiàng),默認(rèn)不顯示LISTEN相關(guān)

-t (tcp)僅顯示tcp相關(guān)選項(xiàng)

-u (udp)僅顯示udp相關(guān)選項(xiàng)

-n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。

-l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài)

-p 顯示建立相關(guān)鏈接的程序名

-r 顯示路由信息,路由表

-e 顯示擴(kuò)展信息,例如uid等

-s 按各個(gè)協(xié)議進(jìn)行統(tǒng)計(jì)

-c 每隔一個(gè)固定時(shí)間,執(zhí)行該netstat命令。

提示:LISTEN和LISTENING的狀態(tài)只有用-a或者-l才能看到

實(shí)用命令實(shí)例:

1、列出所有監(jiān)聽和未監(jiān)聽的端口 ?netstat -a

? ? ?列出所有 tcp 端口 netstat -at;

? ? ?列出所有 udp 端口 netstat -au

2、列出所有處于監(jiān)聽狀態(tài)的 Sockets

? ? ?只顯示監(jiān)聽端口 netstat -l;

  ?只列出所有監(jiān)聽 tcp 端口 netstat -lt;

? ? 只列出所有監(jiān)聽 udp 端口 netstat -lu;

? ? 只列出所有監(jiān)聽 UNIX 端口 netstat -lx

3、顯示每個(gè)協(xié)議的統(tǒng)計(jì)信息

? ? 顯示所有端口的統(tǒng)計(jì)信息 netstat -s;

 ?顯示 TCP 或 UDP 端口的統(tǒng)計(jì)信息 netstat -st 或 -su;

4、在 netstat 輸出中顯示 PID 和進(jìn)程名稱 netstat -p

5、當(dāng)你不想讓主機(jī),端口和用戶名顯示,使用 netstat -n

? ? 如果只是不想讓這三個(gè)名稱中的一個(gè)被顯示,使用以下命令

? ?# netsat -a --numeric-ports

? ?# netsat -a --numeric-hosts

? ?# netsat -a --numeric-users

6、持續(xù)輸出 netstat 信息,netstat 將每隔一秒輸出網(wǎng)絡(luò)信息 ?netstat -c

7、顯示核心路由信息 netstat -r(使用 netstat -rn 顯示數(shù)字格式,不查詢主機(jī)名稱)

8、找出程序運(yùn)行的端口 ?netstat -ap | grep ssh

? ? ?找出運(yùn)行在指定端口的進(jìn)程 ?netstat -an | grep ':80'

9、顯示網(wǎng)絡(luò)接口列表??netstat -i

? ? ?顯示詳細(xì)信息 ?netstat -ie等同于ifconfig

10、IP和TCP分析

? ? 查看連接某服務(wù)端口最多的的IP地址?netstat -nat | grep "192.168.1.101:22" |awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -20

? ??TCP各種狀態(tài)列表 ??netstat -nat |awk '{print $6}'

? ??先把狀態(tài)全都取出來(lái),然后使用uniq -c統(tǒng)計(jì),之后再進(jìn)行排序 ?netstat -nat |awk '{print $6}'|sort|uniq -c?|sort -rn

? ? 分析access.log獲得訪問前10位的ip地址 netstat -ant |awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10

vmstat

vmstat命令是最常見的Linux/Unix監(jiān)控工具,可以展現(xiàn)給定時(shí)間間隔的服務(wù)器的狀態(tài)值,包括服務(wù)器的CPU使用率,內(nèi)存使用,虛擬內(nèi)存 交換情況,IO讀寫情況。
可以看到整個(gè)機(jī)器的 CPU,內(nèi)存,IO的使用情況,而不是單單看到各個(gè)進(jìn)程的CPU使用率和內(nèi)存使用率(使用場(chǎng)景不一樣)。
一般vmstat工具的使用是通過兩個(gè)數(shù)字參數(shù)來(lái)完成的,第一個(gè)參數(shù)是采樣的時(shí)間間隔數(shù),單位是秒,第二個(gè)參數(shù)是采樣的次數(shù),如:

1 root@ubuntu:~# vmstat 2 1 2 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 3 r b swpd free buff cache si so bi bo in cs us sy id wa 4 1 0 0 3498472 315836 3819540 0 0 0 1 2 0 0 0 100 0

2表示每個(gè)兩秒采集一次服務(wù)器狀態(tài),1表示只采集一次。
實(shí)際上,在應(yīng)用過程中,我們會(huì)在一段時(shí)間內(nèi)一直監(jiān)控,不想監(jiān)控直接結(jié)束vmstat就行了,例如:

1 root@ubuntu:~# vmstat 2 2 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- 3 r b swpd free buff cache si so bi bo in cs us sy id wa 4 1 0 0 3499840 315836 3819660 0 0 0 1 2 0 0 0 100 0 5 0 0 0 3499584 315836 3819660 0 0 0 0 88 158 0 0 100 0 6 0 0 0 3499708 315836 3819660 0 0 0 2 86 162 0 0 100 0 7 0 0 0 3499708 315836 3819660 0 0 0 10 81 151 0 0 100 0 8 1 0 0 3499732 315836 3819660 0 0 0 2 83 154 0 0 100 0

這表示vmstat每2秒采集數(shù)據(jù),一直采集,直到我結(jié)束程序,這里采集了5次數(shù)據(jù)我就結(jié)束了程序。
每個(gè)參數(shù)的意思:

r ? 表示運(yùn)行隊(duì)列(就是說(shuō)多少個(gè)進(jìn)程真的分配到CPU),我測(cè)試的服務(wù)器目前CPU比較空閑,沒什么程序在跑,當(dāng)這個(gè)值超過了CPU數(shù)目,就會(huì)出現(xiàn)CPU瓶頸 了。這個(gè)也和top的負(fù)載有關(guān)系,一般負(fù)載超過了3就比較高,超過了5就高,超過了10就不正常了,服務(wù)器的狀態(tài)很危險(xiǎn)。top的負(fù)載類似每秒的運(yùn)行隊(duì) 列。如果運(yùn)行隊(duì)列過大,表示你的CPU很繁忙,一般會(huì)造成CPU使用率很高。
b ?表示阻塞的進(jìn)程,這個(gè)不多說(shuō),進(jìn)程阻塞,大家懂的。
swpd ?虛擬內(nèi)存已使用的大小,如果大于0,表示你的機(jī)器物理內(nèi)存不足了,如果不是程序內(nèi)存泄露的原因,那么你該升級(jí)內(nèi)存了或者把耗內(nèi)存的任務(wù)遷移到其他機(jī)器。
free ? ?空閑的物理內(nèi)存的大小,我的機(jī)器內(nèi)存總共8G,剩余3415M。
buff ? ?Linux/Unix系統(tǒng)是用來(lái)存儲(chǔ),目錄里面有什么內(nèi)容,權(quán)限等的緩存,我本機(jī)大概占用300多M
cache ?cache直接用來(lái)記憶我們打開的文件,給文件做緩沖,我本機(jī)大概占用300多M(這里是Linux/Unix的聰明之處,把空閑的物理內(nèi)存的一部分拿來(lái)做文件和目錄的緩存,是為了提高 程序執(zhí)行的性能,當(dāng)程序使用內(nèi)存時(shí),buffer/cached會(huì)很快地被使用。)
si ? ? 每秒從磁盤讀入虛擬內(nèi)存的大小,如果這個(gè)值大于0,表示物理內(nèi)存不夠用或者內(nèi)存泄露了,要查找耗內(nèi)存進(jìn)程解決掉。我的機(jī)器內(nèi)存充裕,一切正常。
so ? ?每秒虛擬內(nèi)存寫入磁盤的大小,如果這個(gè)值大于0,同上。
bi ? ?塊設(shè)備每秒接收的塊數(shù)量,這里的塊設(shè)備是指系統(tǒng)上所有的磁盤和其他塊設(shè)備,默認(rèn)塊大小是1024byte,我本機(jī)上沒什么IO操作,所以一直是0,但是我曾在處理拷貝大量數(shù)據(jù)(2-3T)的機(jī)器上看過可以達(dá)到140000/s,磁盤寫入速度差不多140M每秒
bo ? 塊設(shè)備每秒發(fā)送的塊數(shù)量,例如我們讀取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO過于頻繁,需要調(diào)整。
in ? ?每秒CPU的中斷次數(shù),包括時(shí)間中斷
cs ? ?每秒上下文切換次數(shù),例如我們調(diào)用系統(tǒng)函數(shù),就要進(jìn)行上下文切換,線程的切換,也要進(jìn)程上下文切換,這個(gè)值要越小越好,太大了,要考慮調(diào)低線程或者進(jìn)程的 數(shù)目,例如在apache和nginx這種web服務(wù)器中,我們一般做性能測(cè)試時(shí)會(huì)進(jìn)行幾千并發(fā)甚至幾萬(wàn)并發(fā)的測(cè)試,選擇web服務(wù)器的進(jìn)程可以由進(jìn)程或 者線程的峰值一直下調(diào),壓測(cè),直到cs到一個(gè)比較小的值,這個(gè)進(jìn)程和線程數(shù)就是比較合適的值了。系統(tǒng)調(diào)用也是,每次調(diào)用系統(tǒng)函數(shù),我們的代碼就會(huì)進(jìn)入內(nèi)核 空間,導(dǎo)致上下文切換,這個(gè)是很耗資源,也要盡量避免頻繁調(diào)用系統(tǒng)函數(shù)。上下文切換次數(shù)過多表示你的CPU大部分浪費(fèi)在上下文切換,導(dǎo)致CPU干正經(jīng)事的 時(shí)間少了,CPU沒有充分利用,是不可取的。
us ? 用戶CPU時(shí)間,我曾經(jīng)在一個(gè)做加密解密很頻繁的服務(wù)器上,可以看到us接近100,r運(yùn)行隊(duì)列達(dá)到80(機(jī)器在做壓力測(cè)試,性能表現(xiàn)不佳)。
sy ? 系統(tǒng)CPU時(shí)間,如果太高,表示系統(tǒng)調(diào)用時(shí)間長(zhǎng),例如是IO操作頻繁。
id ? 空閑 CPU時(shí)間,一般來(lái)說(shuō),id + us + sy = 100,一般我認(rèn)為id是空閑CPU使用率,us是用戶CPU使用率,sy是系統(tǒng)CPU使用率。
wt ?等待IO CPU時(shí)間。
vmstat –s 可以查看page in/page out的數(shù)量?

二、常用工具:nmon、spotlight

nmon

Nmon的使用
1、賦予nmon可執(zhí)行權(quán)限并在命令行輸入: ./nmon 即可啟動(dòng)交互界面可時(shí)時(shí)顯示系統(tǒng)資源
2、輸入命令如下,即可對(duì)Linux進(jìn)行監(jiān)控,并生成.nmon格式的文件
[root@localhost ]# nmon -s 300 -c 288 -f -m /tmp
備注:
-s 300:表示每300秒采集一次數(shù)據(jù),
-c 288 :表示采集288次,300*288=86400秒,剛好是1天的數(shù)據(jù),這樣運(yùn)行一次這個(gè)程序就會(huì)生成一個(gè)一天的數(shù)據(jù)文件,
-m /tmp:表示生成的數(shù)據(jù)文件的路徑
-f:表示生成的數(shù)據(jù)文件名中有時(shí)間
進(jìn)入tmp目錄,查看生成的xxx.nmon文件?
使用sz/sftp下載該文件:sz localhost_160521_1314.nmon

使用分析工具對(duì).nmon文件進(jìn)行分析
打開分析工具nmon analyser v46.xlsm
點(diǎn)擊【Analyze nmon data】按鈕,加載下載的.nmon監(jiān)控文件,生成新的excel文件先保存即可查看到Linux的各性能指標(biāo)情況

!重點(diǎn)關(guān)注四項(xiàng)
cpu:cpu_all,cpu_summ
disk:diskbusy
memory的使用百分比:(total-free-buffer-cache)/total
netIO:eth0-total

spotlight

spotlight的使用

1、安裝:像windows其他軟件安裝一樣

2、展示界面

轉(zhuǎn)載于:https://www.cnblogs.com/yetj/p/8757567.html

總結(jié)

以上是生活随笔為你收集整理的Linux系统资源监控--linux命令、nmon和spotlight的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 色综合99 | 欧美大片免费在线观看 | 亚洲精品一区二区三区四区五区 | 羞羞动漫在线观看 | 天天干天天干天天干天天 | 日本xxxxxⅹxxxx69 | 亚洲熟妇av一区二区三区漫画 | 搞中出| 制服丝袜在线看 | 开心激情综合 | 丰满少妇一区二区三区 | 亚洲精品电影在线观看 | 这里只有精品在线观看 | 午夜影院久久久 | 香港日本韩国三级网站 | 国产粉嫩在线观看 | 精品自拍一区 | 男女互操在线观看 | 黑人操日本女人 | 亚洲AV成人无码一二三区在线 | 激情啪啪网站 | 欧美一区二区三区久久久 | 老妇裸体性猛交视频 | 精品成人av一区二区三区 | av解说在线观看 | 一区二区三区四区五区六区 | 欧美xxxx非洲| 亚洲av最新在线网址 | 99国产精品人妻噜啊噜 | 亚洲精品久久久久久久久久 | 国产原创视频在线 | 一区二区视频免费观看 | 色94色欧美 | 国产做爰xxxⅹ久久久精华液 | 好色艳妇小说 | 国产精品一区二区三区免费看 | 天天躁日日躁aaaa视频 | 一区二区三区在线免费观看视频 | 91瑟瑟| 91精品国产福利在线观看 | 高h亲子乱h | 蜜臀av在线播放 | 美女扒开腿让男人 | 成年网站在线 | 一级全黄裸体片 | 久久av一区二区 | 国产精品久久一区二区三区 | av中文字幕一区二区三区 | 最新国产毛片 | 久久精品一区二区三区不卡牛牛 | 日批免费看| 成人无码av片在线观看 | 五月激情小说网 | 精品少妇爆乳无码av无码专区 | 亚洲精品精品 | av生活片 | 水蜜桃av在线 | 日韩在线激情 | 色悠悠网| 亚洲天堂自拍偷拍 | 国产精品一线天粉嫩av | 红杏出墙记 | 日韩不卡一二三区 | 激烈娇喘叫1v1高h糙汉 | 亚洲第二页| 禁网站在线观看免费视频 | 夜夜操网 | 毛片大全 | 黑人操少妇 | 欧洲a级片 | 裸体女视频 | 亚洲手机在线观看 | 日日摸夜夜| 久久黄色小说 | 美女福利一区 | 日本精品免费在线观看 | 一区二区三区免费网站 | 伊人影院在线观看视频 | 污视频在线观看网址 | 婷婷91 | 午夜宫| www.xxx亚洲| 久热国产在线 | 91精品人妻互换一区二区 | 91精产品一区观看 | 草久在线 | 欧美激情视频一区二区三区不卡 | 亚洲jlzzjizz少妇 | 手机看片91| 少妇高潮av久久久久久 | 精品午夜久久 | 国产毛片在线 | 国产青青视频 | av网址网站 | 韩国一级片在线观看 | 又嫩又硬又黄又爽的视频 | 亚洲AV乱码国产精品观看麻豆 | 在线视频久久 | 天天澡天天狠天天天做 |