性能优化——如何制定性能调优标准

什么时候开始介入调优?
       解决了为什么要做性能优化的问题,那么新的问题就来了:如果需要对系统做一次全面的性
能监测和优化,我们从什么时候开始介入性能调优呢?是不是越早介入越好?
       其实,在项目开发的初期,我们没有必要过于在意性能优化,这样反而会让我们疲于性能优
化,不仅不会给系统性能带来提升,还会影响到开发进度,甚至获得相反的效果,给系统带
来新的问题。
      我们只需要在代码层面保证有效的编码,比如,减少磁盘 I/O 操作、降低竞争锁的使用以
及使用高效的算法等等。遇到比较复杂的业务,我们可以充分利用设计模式来优化业务代
码。例如,设计商品价格的时候,往往会有很多折扣活动、红包活动,我们可以用装饰模式
去设计这个业务。
       在系统编码完成之后,我们就可以对系统进行性能测试了。这时候,产品经理一般会提供线
上预期数据,我们在提供的参考平台上进行压测,通过性能分析、统计工具来统计各项性能
指标,看是否在预期范围之内。
        在项目成功上线后,我们还需要根据线上的实际情况,依照日志监控以及性能统计日志,来
观测系统性能问题,一旦发现问题,就要对日志进行分析并及时修复问题。


有哪些参考因素可以体现系统的性能?
上面我们讲到了在项目研发的各个阶段性能调优是如何介入的,其中多次讲到了性能指标,那么性能指标到底有哪些呢?


在我们了解性能指标之前,我们先来了解下哪些计算机资源会成为系统的性能瓶颈。


CPU:有的应用需要大量计算,他们会长时间、不间断地占用 CPU 资源,导致其他资源无
法争夺到 CPU 而响应缓慢,从而带来系统性能问题。例如,代码递归导致的无限循环,正
则表达式引起的回溯,JVM 频繁的 FULL GC,以及多线程编程造成的大量上下文切换等,
这些都有可能导致 CPU 资源繁忙。


猜你喜欢

转载自blog.csdn.net/qq_36589864/article/details/107949808