linux性能排查命令,linux系统性能排查命令(示例代码)

【top】

命令可以动态查看当前系统的资源情况,以及占用资源的命令列表

用法:

- ctrl + c / q : 停止此命令运行

- c : 展示完整的命令

- 【top -bn1】:可以不动态的展示当前系统的资源情况

- 【uptime】:第一行的load average可以通过此命令看到

$ uptime

23:51:26 up 21:31, 1 user, load average: 30.02, 26.43, 19.02

#第一个数值: 代表着1分钟的平均负载

#第二个数值:代表着5分钟的平均负载

#第三个数值:代表着15分钟的平均负载

#如果1分钟的平均负载很高,15分钟的很低 ==>系统正在执行高负载命令,大量消耗CPU

【dmesg】 ==> /var/log/dmesg

命令可以快速查看系统启动过程中的内核日志信息,包括:系统设备信息、启动和操作过程中系统记录的任何错误和问题

用法:

- 【dmesg | more】: 打印出来的内容会很多,可以利用more来分页查看

- 【dmesg | tail 】: 打印最后十行的日志

【vmstat 1 5】

命令输出系统核心指标信息,1 5 表示1秒输出5次信息

用法:

- 【r】: 等待CPU资源的进程数,不包括等待IO的进程{数值如果大于CPU核数,就说明机器的CPU资源已经饱和}

- 【free】: 系统可用内存(以K为单位)

- 【si,so】:交换区swap写入和读取的数量,如果数值不等于0,那么机器物理内存已经不足

- 【us,sy,id,wa,st】:分别表示用户时间(user)、系统(内核)时间(sys)、空闲时间(idle)、IO等待时间(wait)和被偷走的时间(stolen,一般被其他虚拟机消耗)。

这里的user + sys 结果特别大 ==》 CPU繁忙于执行命令

wail 很大 ==》 则瓶颈可能在磁盘IO

【mpstat -P ALL 1】

命令可显示CPU的个数,以及每一个CPU被占用的状况,

如果有一个CPU占用率特别高,那么有可能是一个单线程应用程序引起的。

【pidstat 1】

输出进程的CPU占用率{会持续输出,并不会覆盖之前的数据}

从这个命令中可以通过计算某个进程占用CPU的时间来推断占用了多少个CPU资源

【iostat -zx 1】

查看机器磁盘IO情况

用法:

- 【r/s, w/s, rkB/s, wkB/s】: 表示每秒读写次数和每秒读写数据量(KB)==》 这个值表示读写量,读写量过大,会引起性能问题

- 【await】: IO操作的平均等待时间,{单位:ms},此处代表应用程序和磁盘交互时,需要消耗的时间(包括IO等待和实际操作的耗时),这个数值过大,可能是硬件设备遇到了瓶颈或者出现故障

- 【avgqu-sz】: 向设备发出的请求平均量,如果此数值大于1,可能是硬件设备已经饱和(部分前端设备支持并行写入)

- 【%util】:设备利用率,这个数值表示设备的繁忙程度,经验值是如果超过60,可能会影响IO性能(可以参照IO操作平均等待时间)。如果到达100%,说明硬件设备已经饱和。

如果显示的是逻辑设备的数据,那么设备利用率不代表后端实际的硬件设备已经饱和。值得注意的是,即使IO性能不理想,也不一定意味这应用程序性能会不好,可以利用诸如预读取、写缓存等策略提升应用性能。

【sar -n DEV 1】

查看网络设备的吞吐率

这里需要了解网络设备的吞吐量上限,从这里可以判断是否网络设备已经饱和,无法承担更大的访问。

【sar -n TCP,ETCP 1】

查看TCP连接状态

参数:

-   active/s:每秒本地发起的TCP连接数,既通过connect调用创建的TCP连接;

-   passive/s:每秒远程发起的TCP连接数,即通过accept调用创建的TCP连接;

-   retrans/s:每秒TCP重传数量;

TCP连接数可以用来判断性能问题是否由于建立了过多的连接,进一步可以判断是主动发起的连接,还是被动接受的连接。

TCP重传可能是因为网络环境恶劣,或者服务器压力过大导致丢包。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值