近期思考如何对系统进行调优,笔者苦于一直找不到一个好的切入点而头疼不已。其实笔者一直在考虑这样的一件事情对于一个平台他可能存在的瓶颈有哪些,如何对系统可能存在的瓶颈进行逐一的去伪存真,最后就是如何对已经确认的系统瓶颈进行调整也就是所谓的优化吧!那做了调整后系统瓶颈真的就得到缓解抑或是不存在了吗?那也未必,所以笔者认为调优的过程是一个系统化的工程绝非是一触而就的。
对于此笔者总结了一下自己的一点点心得,与奋斗在一线的运维兄弟们共勉吧!具体思路如下:
1、 尽可能多的枚举平台可能存在的瓶颈,笔者认为大致存在以下4类:硬件性能、应用程序性能、中间件性能,数据库的性能;具体可以再细化到硬件配置,磁盘IO,网络IO,应用程序逻辑,中间件配置,数据库性能等等;
2、 瓶颈验证,在尽可能多的枚举业务平台可能存在的瓶颈点后,我们需要进一步的去验证我们的猜测是否真的是系统的瓶颈;
3、 如何验证,笔者认为最直接有效的方法是采用专门的压力测试工具、性能监视工具以及其他辅助的工具进行压力测试和性能分析,以此来帮助我们验证众多的瓶颈点的猜测,当然此时最好利用你所使用的工具生成一篇鸿篇巨制的性能诊断书(就像医院的大夫向病人家属下达的死亡通知书一样的)以此来证明你的英明神武和你的专业性;
4、 系统调优,确认系统的瓶颈之后就是我们要设计一套调优方案(当然此刻也可以进行一次专家会诊毕竟没什么坏处毕竟众人拾柴火焰高嘛~呵呵集思广益),对系统存在的问题提供针对性的解决方案
5、 验证,根据调优方案调整后验证是否问题得到缓解,当然可能需要多次进行压力测试和调整才能达到一个理想的水平。
未完待续…..