美文网首页
Linux性能监控 - CPU、Memory、IO、Networ

Linux性能监控 - CPU、Memory、IO、Networ

作者: caoxinyiyi | 来源:发表于2018-09-18 14:10 被阅读44次

    文章转载自:Linux性能监控 - CPU、Memory、IO、Network
    本篇文章总结的不错,在此做个备份,如有侵权,请联系。

    一、CPU

    良好状态指标

    CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%。
    上下文切换:与CPU利用率相关联,如果CPU利用率状态良好,大量的上下文切换也是可以接受的。
    可运行队列:每个处理器的可运行队列<=3个线程。

    监控工具

    vmstat 1

    二、Memory

    良好状态指标
    swap in (si) == 0,swap out (so) == 0
    应用程序可用内存/系统物理内存 <= 70%

    监控工具

    vmstat 1
    free -m

    三、磁盘IO

    良好状态指标
    iowait % < 20%

    提高命中率的一个简单方式就是增大文件缓存区面积,缓存区越大预存的页面就越多,命中率也越高。

    Linux 内核希望能尽可能产生次缺页中断(从文件缓存区读),并且能尽可能避免主缺页中断(从硬盘读),这样随着次缺页中断的增多,文件缓存区也逐步增大,直到系统只有少量可用物理内存的时候 Linux 才开始释放一些不用的页。

    监控工具

    cat /proc/meminfo

    四、Network IO

    对于UDP
    良好状态指标
    接收、发送缓冲区没有长时间等待处理的网络包。

    监控工具

    netstat
    对于UDP服务,查看所有监听的UDP端口的网络情况
    watch netstat -lunp

    对于TCP
    良好状态指标
    对于TCP而言,不会出现因为缓存不足而存在丢包的事,因为网络等其他原因,导致丢了包,协议层也会通过重传机制来保证丢的包到达对方。
    所以,tcp而言更多的专注重传率。

    监控工具

    cat /proc/net/snmp | grep Tcp:

    Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens PassiveOpens AttemptFails EstabResets CurrEstab InSegs OutSegs RetransSegs InErrs OutRsts

    Tcp: 1 200 120000 -1 105112 76272 620 23185 6 2183206 2166093 550 6 968812

    重传率 = RetransSegs / OutSegs

    至于这个值在多少范围内,算ok的,得看具体的业务了。

    业务侧更关注的是响应时间。

    相关文章

      网友评论

          本文标题:Linux性能监控 - CPU、Memory、IO、Networ

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