Linux性能測試與調(diào)優(yōu)的15條常用命令

一、CPU性能評(píng)估

通過下面的命令能了解到CPU是否出現(xiàn)性能瓶頸,再結(jié)合top、ps等命令進(jìn)一步檢查,即可定位到那些進(jìn)程導(dǎo)致CPU負(fù)載過大
vmstat命令:查看CPU負(fù)載

[oracle@oracle backup]$ vmstat 2 3 # 間隔2s,打印3次

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

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

0 0 328088 65340 26020 745768 0 1 4 20 58 64 0 0 100 0 0

0 0 328088 65340 26020 745764 0 0 0 0 126 245 0 0 100 0 0

0 0 328088 65340 26020 745768 0 0 2 20 137 250 0 0 99 1 0

sar命令:統(tǒng)計(jì)CPU性能
場景:在一個(gè)多CPU的系統(tǒng)中,CPU的整體使用率不高,但是系統(tǒng)應(yīng)用響應(yīng)緩慢。
結(jié)論:單線程只使用一個(gè)CPU,導(dǎo)致這個(gè)CPU占用率為100%,無法處理其他請(qǐng)求,而其他的CPU卻閑置,這就導(dǎo)致了整體CPU使用率不高,而應(yīng)用緩慢現(xiàn)象的發(fā)生。
sar -P 0 3 5 :對(duì)第一個(gè)CPU進(jìn)行統(tǒng)計(jì)

[oracle@oracle backup]$ sar -P 0 3 5 顯示CPU利用率,間隔3s,顯示5次
Linux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
02:40:21 AM CPU %user %nice %system %iowait %steal %idle
02:40:24 AM 0 0.00 0.00 2.13 0.00 0.00 97.87
02:40:27 AM 0 0.00 0.00 0.33 0.00 0.00 99.67
02:40:30 AM 0 0.00 0.00 0.33 0.33 0.00 99.33
02:40:33 AM 0 0.33 0.00 0.33 0.00 0.00 99.33
02:40:36 AM 0 0.00 0.00 0.33 0.00 0.00 99.67
Average: 0 0.07 0.00 0.68 0.07 0.00 99.19

iostat命令:查看CPU使用情況

[oracle@oracle backup]$ iostat -cLinux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.06 0.00 0.08 0.18 0.00 99.68

uptime命令:1、5、15分鐘平均負(fù)載
經(jīng)驗(yàn):8核CPU,load average三個(gè)值長期大于8,說明負(fù)載很高,會(huì)影響系統(tǒng)性能。

[oracle@oracle backup]$ uptime 02:42:25 up 6 days, 23:41, 1 user, load average: 0.00, 0.00, 0.00

二、內(nèi)存性能評(píng)估

free命令:查看內(nèi)存使用情況
經(jīng)驗(yàn):可用內(nèi)存/物理內(nèi)存<20%,說明內(nèi)存緊缺,需要增加內(nèi)存

[oracle@oracle backup]$ free -m -m 以MB為單位,-s 時(shí)間段內(nèi)不間斷監(jiān)控
total used free shared buffers cachedMem:
980 906 74 0 26 716-/+ buffers/cache:
163 817Swap: 2495 321 2174

vmstat命令:監(jiān)控內(nèi)存

[oracle@oracle backup]$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st

0 1 329148 76376 27440 733380 0 1 4 20 58 64 0 0 100 0 0

sar -r命令:監(jiān)控內(nèi)存

[oracle@oracle backup]$ sar -rLinux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
12:00:01 AM kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit
12:10:01 AM 72404 932008 92.79 14544 736452 1905844 53.53
12:20:01 AM 71288 933124 92.90 15528 736612 1905844 53.53
12:30:01 AM 70668 933744 92.96 16480 736664 1905844 53.53
12:40:01 AM 69676 934736 93.06 17464 736724 1905848 53.53
12:50:01 AM 68560 935852 93.17 18424 736812 1905848 53.53
01:00:01 AM 67568 936844 93.27 19392 736840 1905848 53.53
01:10:01 AM 68764 935648 93.15 20368 736784 1905848 53.53
01:20:01 AM 67648 936764 93.26 21348 736920 1905852 53.53

三、磁盤I/O性能評(píng)估
sar -d命令:統(tǒng)計(jì)磁盤I/O狀態(tài)經(jīng)驗(yàn):

1、正常svctm<await。

2、svctm接近await表示幾乎沒有I/O等待,性能很好

3、cpu/內(nèi)存復(fù)合/過多請(qǐng)求都會(huì)使svctm增加

4、%util接近100%,表示I/O滿負(fù)荷。

[oracle@oracle backup]$ sar -dLinux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
12:00:01 AM DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
12:10:01 AM dev8-0 0.37 5.67 3.50 24.65 0.00 3.38 2.31 0.09
12:10:01 AM dev8-16 1.75 1.54 44.05 26.00 0.00 2.46 1.89 0.33
12:10:01 AM dev8-32 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:10:01 AM dev8-48 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:10:01 AM dev253-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
12:10:01 AM dev253-1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

iostat -d命令:

1 [oracle@oracle backup]$ iostat -dx /dev/sda3
Linux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
2 Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda3 0.03 0.16 0.01 0.00 0.29 1.32 186.07 0.00 63.32 6.07 182.97 8.40 0.01

四、網(wǎng)絡(luò)性能評(píng)估

ping命令:檢測網(wǎng)絡(luò)連通
netstat命令:-i 查看網(wǎng)絡(luò)接口信息,-r 檢測系統(tǒng)路由表信息
sar -n命令:顯示系統(tǒng)網(wǎng)絡(luò)運(yùn)行狀態(tài)

[oracle@oracle backup]$ sar -n DEV 2 3 # DEV:網(wǎng)絡(luò)接口,EDEV:網(wǎng)絡(luò)錯(cuò)誤統(tǒng)計(jì)數(shù)據(jù),SOCK:套接字信息,F(xiàn)ULL:顯示所有
Linux 2.6.32-431.el6.x86_64 (oracle) 03/17/2020 x86_64 (1 CPU)
02:49:05 AM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:49:07 AM lo 1.01 1.01 0.05 0.05 0.00 0.00 0.00
02:49:07 AM eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容