linux常用性能分析命令

top #查看进程实时消耗的资源

   x #可以突出显示某一列

   shift+< 或 shift+> 可以移动,使用不同的列进行排序

   RES列表示进程当前占用的物理内存大小

   虚拟内存和物理内存的意思:每个程序都有自己独立的地址空间,进程A访问地址X和进程B访问 

   地址X不会有任何关系,因为他们使用不同的地址空间,这就是虚拟内存;磁盘上一个2GB的应  

   用程序开始执行的时候不会一次把2GB的文件全部加载到内存,只有发生读写的时候,数据才会

   从磁盘加载到内存,加载到内存以后就占用了物理内存,这就是RES代表的意义。

vmstat #统计系统整个系统的性能数据

   这是一个很全面的性能分析命令

   列   意义

   r     当前可运行进程数量,如果这个值一直高于cpu数量(lscpu可以查看系统cpu数量),就说

          明服务器cpu数量不够

   b     处于阻塞状态的进程数量,可能是在等待磁盘io,数据库服务器上大量读写时可以看到这一            列不为0

   si/so  交换分区的读写情况,如果持续不为0或者大量读写,那就可能要考虑增加内存了

   bi/bo  磁盘读写情况,可以用来计算当前磁盘读写速度

   us  cpu运行在用户态的比例

   sy   cpu运行在内核态的比例,一般服务器这个值不会很高,我的经验是超过20%就可能不正常

   id    cpu处于空闲状态的比例

   wa   当大量读写磁盘时这一列不为0

   常规使用vmstat -w 1   #每秒打印一次统计数据

   其他列没什么经验可讲,就不做介绍

sar  #可以详细分析系统性能

        这个命令可以比vmstat更加详细的分析系统性能情况

        sar -dz 1   #每秒打印一次磁盘读写情况

               -z 不打印全为0的页,方便观察

        sar -n DEV 1 #打印网卡流量速度

        sar -n EDEV 1 #打印网卡错误统计信息

        sar -n NFS #打印nfs客户端nfs相关调用数据

        sar -n NFSD #打印nfs客户端nfs相关调用数据

        sar -u ALL 1 #打印cpu统计信息

        sar -r ALL 1 #打印内存统计信息

建议:多结合实际环境用命令观察系统状态,特别是对异常系统的分析

后面我会讲下更高级的性能分析工具perf和bpf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值