美文网首页数据库
Linux性能测试与调优的15条常用命令

Linux性能测试与调优的15条常用命令

作者: 数据与人 | 来源:发表于2021-04-08 09:06 被阅读0次

    一、CPU性能评估

    通过下面的命令能了解到CPU是否出现性能瓶颈,再结合top、ps等命令进一步检查,即可定位到那些进程导致CPU负载过大
    vmstat命令:查看CPU负载

    [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命令:统计CPU性能
    场景:在一个多CPU的系统中,CPU的整体使用率不高,但是系统应用响应缓慢。
    结论:单线程只使用一个CPU,导致这个CPU占用率为100%,无法处理其他请求,而其他的CPU却闲置,这就导致了整体CPU使用率不高,而应用缓慢现象的发生。
    sar -P 0 3 5 :对第一个CPU进行统计

    [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分钟平均负载
    经验:8核CPU,load average三个值长期大于8,说明负载很高,会影响系统性能。

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

    二、内存性能评估

    free命令:查看内存使用情况
    经验:可用内存/物理内存<20%,说明内存紧缺,需要增加内存

    [oracle@oracle backup]$ free -m -m 以MB为单位,-s 时间段内不间断监控
    total used free shared buffers cachedMem:
    980 906 74 0 26 716-/+ buffers/cache:
    163 817Swap: 2495 321 2174

    vmstat命令:监控内存

    [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命令:监控内存

    [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性能评估
    sar -d命令:统计磁盘I/O状态经验:

    1、正常svctm<await。

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

    3、cpu/内存复合/过多请求都会使svctm增加

    4、%util接近100%,表示I/O满负荷。

    [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

    四、网络性能评估

    ping命令:检测网络连通
    netstat命令:-i 查看网络接口信息,-r 检测系统路由表信息
    sar -n命令:显示系统网络运行状态

    [oracle@oracle backup]$ sar -n DEV 2 3 # DEV:网络接口,EDEV:网络错误统计数据,SOCK:套接字信息,FULL:显示所有
    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

    相关文章

      网友评论

        本文标题:Linux性能测试与调优的15条常用命令

        本文链接:https://www.haomeiwen.com/subject/usjmkltx.html