liunx的性能分析与监控这些问题是一个很重要的问题,我们需要解决这个问题就可以借助liunx中的一些工具来帮我们处理掉这个问题,以下将会讲一下目前liunx中常用自带的性能分析与监控工具
Linux自带10种常用性能分析与监控工具
- 1.vmstat
- 2.iostat
- 3.iotop监控硬盘
- 4.pidstat
- 5.top
- 6.mpstat
- 7.netstat
- 8.ps
- 9.uptime
- 10.lsof
1.vmstat
用来监控liunx中的虚拟内存和常用的内存、硬盘、CPU的使用情况进行监控
语法就是vmstat interval times
使用方法vmstat +几秒采集一次+持续多少次
vmstat 5 2
表示就是5秒采集一次持续两次
procs:表示目前多少条正在使用读写
memory:表示有多少剩余空间可以被使用
swap:表示磁盘有多少块正在被读取
io:表示写入和写出
cpu:显示用户操作时的情况
这样可能无法直观理解,我用开启一个flask项目,可以看到可以用的free也就是内存变少,缺页和中断in变多,硬盘读取bi和写出bo变多,上下文切换(cs)次数增多,缺页中断(in)增多,也就是当这种情况超出硬件可以支撑的时候系统就会出现内存不足,导致卡机情况出现
2.iostat
用来监控CPU和硬盘,以及整个系统用户的使用情况
可以看到一个用户使用cpu情况的一个平均值,以及设备读取和写入的情况,可以监控目前liunx是否处于异常状态
3.iotop监控硬盘
4.pidstat
用于监控全部的进程信息
5.top
监控系统性能,比较详细显示当前进程名称以及cpu占用情况和被连接的情况
6.mpstat
实时监控CPU的统计信息
7.netstat
可以看到本机的各个端口的网络连接情况
8.ps
显示进程信息
9.uptime
打印系统运行时长以及系统的平均负载均衡
10.lsof
lsof可以对整个系统进行查错,经常用到的就是l
sof -i:8080查看端口是否被占用,
lsof -i 192.168.1.1查看远程已打开的网络连接
lsof -p 8888 查看进程打开那些文件
lsof -u root 查看用户打开那些文件