总体上采用总分的结构来分析系统性能:
1.常用系统命令
Vmstat、sar、iostat、netstat、free、ps、top等
2.常用组合方式
• 用vmstat、sar、iostat检测是否是CPU瓶颈
• 用free、vmstat检测是否是内存瓶颈
• 用iostat检测是否是磁盘I/O瓶颈
• 用netstat检测是否是网络带宽瓶颈
1.首先用top或者uptime(top的精简版)来看系统CPU和内存的占有率以及系统的负载均衡(1min、5min、15min的负载均衡)
2.用vmstat来查看cpu和进程:
3.pidstat协助vmstat来查询CPU具体信息
pidstat -u 1 -p 进程号
每个进程使用CPU的用量的分解信息
4.查看内存情况
free 或者free -m
5.查看硬盘使用情况
df -h
6.利用iostat评估磁盘性能
1 2 3 4 5 6 7 8 9 10 11 |
|
对上面每项的输出解释如下:
- Blk_read/s表示每秒读取的数据块数。
- Blk_wrtn/s表示每秒写入的数据块数。
- Blk_read表示读取的所有块数。
- Blk_wrtn表示写入的所有块数。
- 可以通过Blk_read/s和Blk_wrtn/s的值对磁盘的读写性能有一个基本的了解,如果Blk_wrtn/s值很大,表示磁盘的写操作很频繁,可以考虑优化磁盘或者优化程序,如果Blk_read/s值很大,表示磁盘直接读取操作很多,可以将读取的数据放入内存中进行操作。
- 对于这两个选项的值没有一个固定的大小,根据系统应用的不同,会有不同的值,但是有一个规则还是可以遵循的:长期的、超大的数据读写,肯定是不正常的,这种情况一定会影响系统性能