案例分析总结
第6章结尾我们看到,银行信贷系统的性能已经无法满足正常业务需要,这迫使我们优化工作提速。通过对系统加大监控力度,获得第一手分析数据,进而敲定总体优化方向。
2010年5月19日 笔记整理 地点:广州
目前系统性能极不乐观,IT运维人员最近一直忙于应付投诉电话,运维主任愁眉苦脸地告诉我银行信贷市场推广刚进行过一轮促销活动,业务量将会有迅猛的提升。现场每一个人都在担忧一件事:系统随时会宕机!上一次发生事故时,业务停了20分钟,几乎把一年的故障指标都消耗完了。我私下里还听说其实他们从香港和深圳找过两位数据库高手,但最后都没有什么结果。在回酒店的路上,我一直安慰自己:不必那么爱惜漂亮的羽毛,否则每天关在家里刷羽毛算了,到了该拿出漂亮羽毛做漂亮衣服的时候了。
在第二次项目推进会上,我督促Larry加大对系统的监控力度,并再次强调了早发现、早解决的重要性。早发现、早解决是我受到华佗的启发,进而对监控工作的领悟。
有人问名医华佗:“您的两位哥哥也是名医, 那么兄弟三人哪一位医术最高呢?”
华佗答到:“我大哥治病的原则是防患于未然,望气色便能用药把身体调理好了, 百姓称之保健医生; 我二哥治病的原则是药到病除,望闻问切就把咳嗽感冒这些小患治好了,百姓称之良医; 而我医术最差,治病的原则是起死回生,病人往往奄奄一息了,经我诊治能留下半条命,人们却称我为神医。”
看来被誉为“保健医生”的大哥监控最得力,能够早发现问题并及时解决。“神医”虽然挽救了性命,但由于早已过了最佳诊疗期,个体再也不可能一如从前地充满生机了。对于数据库的优化,我们应该学习“保健医生”,“神医”的头衔并不值得争取。
经过几天的讨论,三个性能优化方案终于浮出水面。第一个方案主推硬件扩容,最终被银行方面否定了,因为申请这笔巨大的预算已经来不及了。第二个方案主推业务层软件优化,也被业务开发商和集成商联手毙掉,因为整个系统的业务包含多个不同集成商开发的应用,使用了 Apache、JAVA、Flex、Tomcat和Oracle等技术。由于不同的集成商开发,采用的标准不一致,这使得维护成本很高。对这样的混合型业务系统的“手术”既不安全,牵出的工作量也会非常庞大。
最后只剩下数据库优化这条路了。在下一章,我们会看到这个性能优化项目的核心工作:大规模SQL语句优化。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25714482/viewspace-704886/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25714482/viewspace-704886/