自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux性能問題分析流程與性能優(yōu)化思路

系統(tǒng) Linux 新聞
除了性能分析外,很多時候,我們還需要對系統(tǒng)性能進行基準測試。

排查順序

1. 整體情況

  • top/htop/atop 命令查看進程/線程、CPU、內(nèi)存使用情況,CPU使用情況;
  • dstat 2 查看CPU、磁盤IO、網(wǎng)絡IO、換頁、中斷、切換,系統(tǒng)I/O狀態(tài);
  • vmstat 2 查看內(nèi)存使用情況,內(nèi)存狀態(tài);
  • iostat -d -x 2 查看所有磁盤的IO情況,系統(tǒng)I/O狀態(tài);
  • iotop 查看IO靠前的進程,系統(tǒng)的I/O狀態(tài);
  • perf top 查看占用CPU最多的函數(shù),CPU使用情況;
  • perf record -ag -- sleep 15 perf report 查看CPU事件占比,調(diào)用棧,CPU使用情況;
  • sar -n DEV 2 查看網(wǎng)卡的吞吐,網(wǎng)卡狀態(tài);
  • /usr/share/bcc/tools/filetop -C 查看每個文件的讀寫情況,系統(tǒng)的I/O狀態(tài);
  • /usr/share/bcc/tools/opensnoop 顯示正在被打開的文件,系統(tǒng)的I/O狀態(tài);
  • mpstat -P ALL 1 單核CPU是否被打爆;
  • ps aux --sort=-%cpu 按CPU使用率排序,找出CPU消耗最多進程;
  • ps -eo pid,comm,rss | awk '{m=$3/1e6;s["*"]+=m;s[$2]+=m} END{for (n in s) printf"%10.3f GB %s\n",s[n],n}' | sort -nr | head -20 統(tǒng)計前20內(nèi)存占用;
  • awk 'NF>3{s["*"]+=s[$1]=$3*$4/1e6} END{for (n in s) printf"%10.1f MB %s\n",s[n],n}' /proc/slabinfo | sort -nr | head -20 統(tǒng)計內(nèi)核前20slab的占用;

2. 進程分析,進程占用的資源

  • pidstat 2 -p 進程號,查看可疑進程CPU使用率變化情況;
  • pidstat -w -p 進程號 ,查看可疑進程的上下文切換情況;
  • pidstat -d -p 進程號 ,查看可疑進程的IO情況;
  • lsof -p 進程號,查看進程打開的文件;
  • strace -f -T -tt -p 進程號,顯示進程發(fā)起的系統(tǒng)調(diào)用;

3. 協(xié)議棧分析,連接/協(xié)議棧狀態(tài)

  • ethtool -S 查看網(wǎng)卡硬件情況;
  • cat /proc/net/softnet_stat/ifconfig eth1 查看網(wǎng)卡驅動情況;
  • netstat -nat|awk '{print awk $NF}'|sort|uniq -c|sort -n 查看連接狀態(tài)分布;
  • ss -ntp 或者 netstat -ntp 查看連接隊列;
  • netstat -s 查看協(xié)議棧情況;

4. 方法論

RED方法:監(jiān)控服務的請求數(shù)(Rate)、錯誤數(shù)(Errors)、響應時間(Duration)。Weave Cloud在監(jiān)控微服務性能時提出的思路。

USE方法:監(jiān)控系統(tǒng)資源的使用率(Utilization)、飽和度(Saturation)、錯誤數(shù)(Errors)。

圖片

5. 性能分析工具

圖片

Linux 內(nèi)核的各個子系統(tǒng)出發(fā),匯總了對各個子系統(tǒng)進行性能分析時,你可以選擇的工具。不過,雖然這個圖是性能分析最好的參考資料之一,它其實還不夠具體。比如,當你需要查看某個性能指標時,這張圖里對應的子系統(tǒng)部分,可能有多個性能工具可供選擇。但實際上,并非所有這些工具都適用,具體要用哪個,還需要你去查找每個工具的手冊,對比分析做出選擇。

6. CPU分析思路

圖片圖片圖片

7. 內(nèi)存分析思路

接著我們來看內(nèi)存方面。從內(nèi)存的角度來說,主要的性能指標,就是系統(tǒng)內(nèi)存的分配和使用、進程內(nèi)存的分配和使用以及 SWAP 的用量。下面這張圖列出了常見的內(nèi)存性能指標。

圖片圖片

8. IO分析思路

從文件系統(tǒng)和磁盤 I/O 的角度來說,主要性能指標,就是文件系統(tǒng)的使用、緩存和緩沖區(qū)的使用,以及磁盤 I/O 的使用率、吞吐量和延遲等。下面這張圖列出了常見的 I/O 性能指標。

圖片圖片圖片

9. 網(wǎng)絡分析思路

從網(wǎng)絡的角度來說,主要性能指標就是吞吐量、響應時間、連接數(shù)、丟包數(shù)等。根據(jù) TCP/IP 網(wǎng)絡協(xié)議棧的原理,我們可以把這些性能指標,進一步細化為每層協(xié)議的具體指標。這里我同樣用一張圖,分別從鏈路層、網(wǎng)絡層、傳輸層和應用層,列出了各層的主要指標。

圖片圖片圖片

10. 基準測試工具

除了性能分析外,很多時候,我們還需要對系統(tǒng)性能進行基準測試。比如,

  • 在文件系統(tǒng)和磁盤 I/O 模塊中,我們使用 fio 工具,測試了磁盤 I/O 的性能。
  • 在網(wǎng)絡模塊中,我們使用 iperf、pktgen 等,測試了網(wǎng)絡的性能。
  • 而在很多基于 Nginx 的案例中,我們則使用 ab、wrk 等,測試 Nginx 應用的性能。

? 圖片 ?

責任編輯:張燕妮 來源: 華仔聊技術
相關推薦

2011-05-27 15:11:04

DB2

2024-03-04 08:00:00

Java開發(fā)

2025-02-08 10:54:02

2022-03-02 11:13:50

Web前端開發(fā)

2019-08-13 09:04:22

Linux性能調(diào)優(yōu)

2014-04-23 16:43:05

Linux服務器性能分析

2013-07-04 10:55:20

2015-09-14 10:41:51

PHP性能分析微觀分析

2022-04-12 12:35:02

Linux啟動性能systemd

2015-08-18 11:44:02

PHP性能分析宏觀分析

2020-08-24 08:34:03

命令性能優(yōu)化

2019-12-10 08:10:35

LinuxCPU性能優(yōu)化

2021-11-23 09:45:26

架構系統(tǒng)技術

2021-03-15 09:27:05

Redis優(yōu)化技術

2022-01-09 16:45:36

前端性能優(yōu)化編程

2023-12-11 07:21:36

2023-12-05 07:41:24

LinuxCPU性能問題

2022-09-28 14:13:03

Linux工具

2013-03-20 17:18:07

Linux系統(tǒng)性能調(diào)優(yōu)

2023-11-01 11:59:13

點贊
收藏

51CTO技術棧公眾號