linux系统性能监控与优化

最近几年做了很多性能优化的事情,但是一直没有形成一套理论,也没有很好的形成一个好的排查问题的流程,每次做优化,大多是经验式的查找,最近看了一下这本书《linux system and performance monitoring》,写的太好了,仔细看了一遍,下面的是读书笔记和个人的一些体会。
 
1.性能优化
    性能优化的过程就是打到系统的瓶颈,并且消除这处瓶颈的过程。对于操作系统来说,就是在4个子系统( CPU,Memory,IO,Network )之间达到平衡和取舍。
    不同子系统之间会相互影响,某一个子系统过高的使用率,会导致问题:
    1)大量的页调入请求会填满队列
    2)网卡设备上大量的吞吐,会导致CPU load过高
    3)管理空闲内存队列也会消耗CPU
    4)大量的磁盘写请求,会消耗CPU和IO带宽
 
2.应用类型
    要找到系统瓶颈,应该先了解应用类型:
    1)IO密集型
    大量消耗内存和存储系统,对CPU和网络(存储系统是基于网络的除外)要求不高。这种应用使用CPU来发起IO请求,然后进入sleep状态。比如数据库。
    2)CPU密集型
    需要CPU进行批处理和数学计算。比如:web servers,mail servers,rendering server
 
3.找系统性能瓶颈的方法:
    最好的找性能瓶颈的方法,是先对在正常满足性能要求的情况下,统计系统的各个参数,做为baseline.
    然后在高压力下,当系统性能满足不了需求时,与baseline进行对比,找到性能问题。
 
4.常用的性能监控工具:
     linux系统性能监控与优化_第1张图片

你可能感兴趣的:(linux系统性能监控与优化)