常用监控指标及调优步骤

诊断性能问题,需要清楚监控的关键指标,以此辅助试验诊断,最后验证推测。

   常用监控的关键指标

      通常情况下,性能测试监控指标主要分为:资源指标和系统指标。

 资源指标:

   CPU使用率:指单位时间内进程使用cpu时间的百分比,这是对一个时间段内CPU使用状况的统计,通过这个指标可以看出在某一个时间段内CPU被占用的情况,如果被占用时间很高,那么就需要考虑CPU是否已经处于超负荷运作,长期超负荷运作对于机器本身来说是一种损害,因此必须将CPU的利用率控制在一定的比例下,以保证机器的正常运作。,长时间高负载的情况下,一般可接受上限不超过75%。

内存占用率:一般可接受上限不超过75%。

load average(linux):是在一段时间内CPU正在处理以及等待CPU处理的进程数之和的统计信息,也就是CPU使用队列的长度的统计信息。一般可接受上限不超过系统核心数的2倍。查看CPU core 命令:grep 'model name' /proc/cpuinfo | wc -l

磁盘I/O: 磁盘主要用于存取数据,因此当说到IO操作的时候,就会存在两种相对应的操作,存数据的时候对应的是写IO操作,取数据的时候对应的是是读IO操作,一般使用% Disk Time(磁盘用于读写操作所占用的时间百分比)度量磁盘读写性能。

网络带宽:一般使用计数器Bytes Total/sec来度量,Bytes Total/sec表示为发送和接收字节的速率,包括帧字符在内。判断网络连接速度是否是瓶颈,可以用该计数器的值和目前网络的带宽比较。

 

 系统指标:

   TPS:每秒钟系统能够处理的交易或事务的数量。它是衡量系统处理能力的重要指标,TPS应该是一个比较平稳的曲线,而不是上下波动。

   平均响应时间:系统处理事务的响应时间的平均值。事务的响应时间是从客户端提交访问请求到客户端接收到服务器响应所消耗的时间。对于系统快速响应类页面,一般简单业务处理不超过3秒,复杂业务处理不超过5秒。对于接口,要求的事务处理能力比较高,响应时间就更短

   事务失败率:性能测试中,定义事务用于度量一个或者多个业务流程的性能指标,如用户登录、保存订单、提交订单操作均可定义为事务。事务失败率指在性能测试中失败的事务与事务总数的百分比,对于要求很高的事务,要求失败率为0%,一般的事务,失败率应控制在0.1%以内。

 

确定清晰的性能目标,并按优先级排列。

 利用科学的测试工具对应用程序进行测试,并记录测试结果。

 把分布式系统拆分成组件:Web层、业务层、集成层、以及网络传输时间,分别进行调优。

 有系统的科学调优

     遵循一定的程序:测试性能→找出瓶颈→假设造成瓶颈的因素→测试假设是否成立→修改应用→再次测试性能。

     确定影响性能的因素:CPU、Memory还是IO。

     找出主要的瓶颈,首先解决最容易的,再重复测试。

     一次修改一个瓶颈,不要对不需要的地方进行调优。

     提高CPU性能:更快的代码、SQL,更好的算法,减少短期生存的对象。

     提高内存性能:减少或减小长期生存的对象。

     提高IO性能:重新设计应用,减少IO的交互。

 优化完成之后,进行QA测试。

 在代码中记录优化的地方,并对旧代码进行注释。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章