linux之幾個重要性能指標
1、top
top命令可以直觀的看出系統的CPU使用情況,以及內存的使用,當系統特別慢的時候可以通過這個命令查看CPU的使用,有可能是某個進程把CPU占滿了。
t:關閉或開啟CPU統計信息
m:關閉或開啟內存信息的顯示
A:對系統上的各類資源排序。對於快速找到系統上的性能問題的任務很有作用
2、vmstat
查看關於內存,內存也,塊io和CPU信息,可以顯示平均值,也可以通過命令來采樣顯示。
vmstat -a 查看活動頁與非活動頁
vmstat 3 2 每三秒采樣一次,采樣兩次。
各列含義
r : 等待執行時間的進程數。這個不包含io操作,r的值大於CPU的數量就表示已經飽和了。
b:在不可中斷睡眠中的進程數
swpd:已使用的swap空間內存量
si:從交換分區寫入到內存的量
so:從內存寫入到交換分區的量
si/so才是識別內存瓶頸的關鍵,長時間每秒200到300以上的si so次數表明內存出現了瓶頸
bi:發往塊設備的數目
bo:塊設備接受的數目
system
in:中斷的次數,中斷如果太多的話表名系統有問題,可能是網卡中斷或硬件中斷
cs:contextswitch 上下文切換 上下文切換的次數不是越多越好,相反,如果上下文切換發生次數太多的話應該是系統出問題了。
cpu
us:運行用戶程序占用 時間(用戶時間)
sy:運行內核程序占用的時間(系統時間)
id:空閑時間
wa:等待io的時間
st:Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown
3、uptime(這個命令可用w替代)
這個命令可以看出系統在之前一段時間的負載情況,系統平均負載分別是過去1分鐘,5分鐘,15分鐘的值
何為系統的平均負載:在特定時間間隔內運行隊列中的平均進程數
一般來說,每個CPU內核當前活動進程數不大於3,則系統運行表現良好!當然這裏說的是每個cpu內核,也就是如果你的主機是四核cpu的話,那麽只要uptime最後輸出的一串字符數值小於12即表示系統負載不是很嚴重.當然如果達到20,那就表示當前系統負載非常嚴重,估計打開執行web腳本非常緩慢.
4、free
顯示系統的可用內存和已用內存,包括swap。也包括被內存使用的緩沖和緩存信息。
5、iostat
rrqm/s,wrqm/s
每秒向設備發出的合並讀寫請求的數目。多個單一的讀寫請求可以合並為一個傳輸請
求,因為傳輸請求的大小的可變的
r/s,w/s 設備上的每秒讀/寫請求次數。
rsec/s,wsec/s 設備上每秒的讀/寫扇區數
avgrq-sz 向設備發出的請求的平均大小,顯示為扇區
avgqu-sz 向設備發出的請求的平均隊列長度
await CPU執行系統任務的時間百分比
svctm I/O請求的平均服務時間(毫秒)
%util I/O請求從發出到設備的時間占用CPU的百分比(設備的帶寬利用率)。該值接近100%時,設備能力幾乎飽和
還有mpstat,查看所有cpu的使用情況和軟中斷和硬中斷,netstat查看網絡的情況
linux之幾個重要性能指標