性能调优的一些工具
程序员文章站
2022-04-09 21:27:07
...
- vmstat
[[email protected]_5_30_centos ~]# vmstat 22958 procs -----------memory---------- ---swap-- -----io---- -system-- -cpu r b swpd free buff cache si so bi bo in cs us sy id wa st 1 0 0 846752 184632 3362228 0 0 0 9 4 0 7 1 92 0 0
说明:cs content swap 每秒上下文切换的次数
-
in 系统中断的次数,包含时间中断
- us、sy 分别用户态和内核态的 CPU 利用率
-
[[email protected]_5_30_centos ~]# free -h total used free shared buffers cached Mem: 7.7G 6.9G 823M 172K 180M 3.2G -/+ buffers/cache: 3.5G 4.2G Swap: 0B 0B 0B
buff/cache 是缓存和缓冲区的大小。缓存(cache):是从磁盘读取的文件的或者向磁盘写文件时的临时存储数据,面向文件。使用 cachestat 可以查看整个系统缓存的读写命中情况,使用 cachetop 可以观察每个进程缓存的读写命中情况。缓冲区(buffer)是写入磁盘数据或从磁盘直接读取的数据的临时存储,面向块设备
-
[[email protected]_0_36_centos ~]# iostat -dxk Linux 2.6.32-573.el6.x86_64 (VM_0_36_centos) 01/15/20 _x86_64_ (8 CPU) Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util vda 0.01 1.83 0.68 1.17 10.20 12.00 23.92 0.01 7.78 10.26 6.33 3.82 0.71 vdb 0.10 34.93 0.63 0.83 88.90 143.03 318.11 0.01 8.23 139.99 58.18 2.41 0.35 vdc 0.62 3230.97 60.04 215.61 3546.34 13996.54 127.28 0.08 0.27 1.97 0.37 0.40 11.16 vdd 0.00 52.05 0.34 5.14 17.14 228.77 89.80 0.10 18.50 12.31 18.91 1.40 0.77 vde 0.01 23.73 0.04 0.98 3.87 95.46 194.58 0.05 48.57 7.59 50.44 0.91 0.09
%util 代表利用率 r/s w/s 每秒读写请求数 r_wait w_wait 读写等待时长
-
rkB/s wkB/s 读写的容量 每秒的kb数 吞吐量
-
出现IO性能的情况
当磁盘 I/O 利用率长时间超过 80%,或者响应时间过大
如果 %util 很大,而 rkB/s 和 wkB/s 很小,一般是因为存在较多的磁盘随机读写,最好把随机读写优化成顺序读写
如果 avgqu-sz 比较大,说明有很多 I/O 请求在队列中等待。一般来说,如果单块磁盘的队列长度持续超过2,一般认为该磁盘存在 I/O 性能问题。
上一篇: Lucene 全文检索