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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux sar性能分析

發布時間:2025/6/15 linux 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux sar性能分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

?

  • Linux使用sar進行性能分析
    • sar簡介
    • sar命令常用格式
    • sar常用性能數據分析
      • 整體CPU使用統計-u
      • 各個CPU使用統計-P
      • 內存使用情況統計-r
      • 整體IO情況-b
      • 各個IO設備情況-d
      • 網絡統計-n
      • sar日志保存-o
    • References

?

sar簡介

sar(System Activity Reporter, 系統活動情況報告): 是用于監控Linux系統各個性能的優秀工具,包括:文件的讀寫情況、系統調用的使用情況、磁盤I/O、CPU效率、內存使用狀況、進程活動及IPC有關的活動等。

sar命令常用格式

sar [ options ] [ <interval> [ <count> ] ]?

其中:?
interval: 采樣周期,單位是秒;?
count:采樣次數,默認值是連續采樣;?
options:命令行選項。

sar命令的選項很多,下面只列出常用選項:?
-A:所有報告的總和?
-u:輸出整體CPU使用情況的統計信息?
-v:輸出inode、文件和其他內核表的統計信息?
-d:輸出每一個塊設備的活動信息?
-r:輸出內存和交換空間的統計信息?
-b:顯示I/O和傳送速率的統計信息?
-a:文件讀寫情況?
-c:輸出進程統計信息,每秒創建的進程數?
-R:輸出內存頁面的統計信息?
-y:終端設備活動情況?
-w:輸出系統交換活動信息

sar常用性能數據分析

下文將說明如何使用sar獲取以下性能分析數據:?
- 整體CPU使用統計?
- 各個CPU使用統計?
- 內存使用情況統計?
- 整體I/O情況?
- 各個I/O設備情況?
- 網絡統計

整體CPU使用統計(-u)

使用-u選項,sar輸出整體CPU的使用情況,不加選項時,默認使用的就是-u選項。以下命令顯示采樣時間為3s,采樣次數為2次,整體CPU的使用情況:?
sar 3 2 (或者 sar -u 3 2)

[root@HB05-uhost-130-157 tmp]# sar 3 2 Linux 2.6.32-279.19.31.el6.ucloud.x86_64 (HB05-uhost-130-157) 01/17/2017 _x86_64_ (32 CPU)11:58:50 PM CPU %user %nice %system %iowait %steal %idle 11:58:53 PM all 13.25 0.00 3.16 3.72 0.00 79.87 11:58:56 PM all 12.69 0.00 3.04 4.77 0.00 79.50 Average: all 12.97 0.00 3.10 4.25 0.00 79.69 [root@HB05-uhost-130-157 tmp]# sar -u 3 2 Linux 2.6.32-279.19.31.el6.ucloud.x86_64 (HB05-uhost-130-157) 01/17/2017 _x86_64_ (32 CPU)11:59:02 PM CPU %user %nice %system %iowait %steal %idle 11:59:05 PM all 22.24 0.00 3.60 8.14 0.00 66.02 11:59:08 PM all 21.26 0.00 4.28 6.95 0.00 67.51 Average: all 21.75 0.00 3.94 7.55 0.00 66.77
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

輸出項說明:?
CPU:all表示統計信息為所有CPU的平均值。?
%usr:CPU在用戶態執行進程的時間百分比。?
%nice:CPU在用戶態模式下,用于nice操作,所占用CPU總時間的百分比。?
%system:CPU處在內核態執行進程的時間百分比。?
%iowait:CPU用于等待I/O操作占用CPU總時間的百分比。?
%steal:管理程序(hypervisor)為另一個虛擬進程提供服務而等待虛擬CPU的百分比。?
%idle:CPU空閑時間百分比。?
1. 若 %iowait 的值過高,表示硬盤存在I/O瓶頸?
2. 若 %idle 的值高但系統響應慢時,有可能是 CPU 等待分配內存,此時應加大內存容量?
3. 若 %idle 的值持續低于1,則系統的 CPU 處理能力相對較低,表明系統中最需要解決的資源是 CPU

各個CPU使用統計(-P)

“-P ALL”選項指示對每個內核輸出統計信息:?

其中”CPU”列輸出0,1,2,3,4,5指示對應的cpu核。也可針對單獨一個內核顯示,“-P 1”指示顯示第二個內核的統計信息。

內存使用情況統計(-r)

使用-r選項可顯示內存統計信息,以下命令顯示以1秒為采樣時間,顯示2次內存信息:?
sar -r 1 2?

參數參數意義
kbmemfreeAmount of free memory available in kilobytes.
kbmemusedAmount of used memory in kilobytes. This does not take into account memory used by the kernel itself.
%memusedPercentage of used memory
kbbuffersAmount of memory used as buffers by the kernel in kilobytes.
kbcachedAmount of memory used to cache data by the kernel in kilobytes.
kbcommitAmount of memory in kilobytes needed for current workload. This is an estimate of how much RAM/swap is needed to guarantee that there never is out of memory.
%commitPercentage of memory needed for current workload in relation to the total amount of memory (RAM+swap). This number may be greater than 100% because the kernel usually overcommits memory.

整體I/O情況(-b)

使用-b選項,可以顯示磁盤I/O的使用情況:Report I/O and transfer rate statistics.?
sar -b 3 2?

輸出項說明:?
tps: 每秒向磁盤設備請求數據的次數,包括讀、寫請求,為rtps與wtps的和。出于效率考慮,每一次IO下發后并不是立即處理請求,而是將請求合并(merge),這里tps指請求合并后的請求計數。?
rtps: 每秒向磁盤設備的讀請求次數?
wtps: 每秒向磁盤設備的寫請求次數?
bread/s:每秒鐘從物理設備讀入的數據量,單位為 塊/s?
bwrtn/s:每秒鐘向物理設備寫入的數據量,單位為 塊/s

各個I/O設備情況(-d)

使用-d選項可以顯示各個磁盤的統計信息,再增加-p選項可以以sdX的形式顯示設備名稱:?
sar -d -p 3 2?

輸出項說明:?
rd_sec/s: 每秒從設備讀取的扇區數?
wr_sec/s: 每秒往設備寫入的扇區數?
avgrq-sz: 發送給設備的請求的平均大小(以扇區為單位)?
avgqu-sz: 發送給設備的請求隊列的平均長度?
await :服務等待I/O請求的平均時間,包括請求隊列等待時間 (單位毫秒)?
svctm :設備處理I/O請求的平均時間,不包括請求隊列等待時間 (單位毫秒)?
%util :一秒中有百分之多少的時間用于 I/O 操作,即被io消耗的cpu百分比。

備注:?
- 如果 %util 接近 100%,說明產生的I/O請求太多,I/O系統已經滿負荷,該磁盤可能存在瓶頸。?
- 如果 svctm 比較接近 await,說明 I/O 幾乎沒有等待時間;如果 await 遠大于 svctm,說明I/O 隊列太長,io響應太慢,則需要進行必要優化。?
- 如果avgqu-sz比較大,也表示有當量io在等待。

網絡統計(-n)

使用-n選項可以對網絡使用情況進行顯示,-n后接關鍵詞”DEV”可顯示eth0、eth1等網卡的信息:?
sar -n DEV 1 1?

以上主要輸出含義如下:?
IFACE: Name of the network interface for which statistics are reported.?
rxpck/s: Total number of packets received per second.?
txpck/s: Total number of packets transmitted per second.?
rxkB/s: Total number of kilobytes(kB) received per second.?
txkB/s: Total number of kilobytes(kB) transmitted per second.?
rxcmp/s: Number of compressed packets received per second (for cslip etc.).?
txcmp/s: Number of compressed packets transmitted per second.?
rxmcst/s: Number of multicast packets received per second.

sar日志保存(-o)

最后講一下如何保存sar日志,使用-o選項,我們可以把sar統計信息保存到一個指定的文件,對于保存的日志,我們可以使用-f選項讀取:

linux:~ # sar -n DEV 1 10 -o sar.out?
linux:~ # sar -d 1 10 -f sar.out?
相比將結果重定向到一個文件,使用-o選項,可以保存更多的系統資源信息。

References:

1?http://www.thegeekstuff.com/2011/03/sar-examples/?
2?http://www.cnblogs.com/bangerlee/articles/2545747.html?
3?http://www.cnblogs.com/xianghang123/archive/2011/08/25/2153591.html?
4?http://www.chinaz.com/server/2013/0401/297942.shtml

轉載于:https://my.oschina.net/zhiyonghe/blog/1860688

總結

以上是生活随笔為你收集整理的Linux sar性能分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。