从架构角度,思考如何优化系统性能?

从架构角度,思考如何优化系统性能?

经过IBM老师的培训,对性能优化方面进行一个简单的总结

系统优化从架构层面,可以考虑从以下方面进行思考:
一、结构
      1、业务需求方面
                与用户沟通确认,自己对业务理解是否存在误区,用户对业务响应的期望本身就没有那么高;
      2、产品选型
                应该反思我们在选择产品方面是否存在缺陷,软件的设计初衷就与你的希望不一致,还要需要考虑产品是否支持容错、集群、横向扩展等
二、操作模型(Operation Modeling)
      1、协议选择 
                 不同的协议的成本不一样,比如https的性能就比http低的多;
      2、工作流程(业务流程) 
                 业务流程现状本身就是足够复杂,通过系统优化空间有限,是否可以通过流程优化改善性能
      3、系统对接方式
                 系统对接方式有同步与异步两种,业务能否接受一定时间差的延期,通过异步进行实现系统之间的系统对接;
      4、缓存
                 在客户端与服务端,将常用的基础数据(主数据),进行缓存,减少不必要的数据库访问;
三、实现方面
      1、编程语言
                用户就要求实时响应,想基于虚拟机的语言就可能需要重新考虑选择了,比如C++;
四、资源
      1、冗余的数据
               数据冗余从设计角度来看数据冗余不符合数据库范式的要求,通过一定的冗余有时可以极大的减少数据库访问次数;
      2、增加带宽、内存、服务器、磁盘
              随着硬件成本的不断下降,有些情况可以通过一定金钱解决问题,关键的问题点在于如何发现系统的问题点在哪,确认你是否找到了系统的真正瓶颈;
      3、服务器调优  
              可以通过对应用中间件,数据库服务器,操作系统根据系统的运行情况进行相应的调优。

你可能感兴趣的:(从架构角度,思考如何优化系统性能?)