加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 安全 > 正文

只改2条语句,治好HIS系统数据库“葛优瘫”!

发布时间:2021-01-10 01:37:18 所属栏目:安全 来源:网络整理
导读:副标题#e# 《只改2条语句,治好HIS系统数据库“葛优瘫”

  • 优化后

  • 优化前

  • 优化后

优化阶段二(针对语句)

再次分析解决大面积语句阻塞的系统,发现现在的情况,主要有如下几个:

  1. 由于内存不足导致的IO压力.
  2. 系统CPU依然彪高.
  3. 部分功能语句依然慢,消耗的资源很高.

再次对系统调研:

  1. 哪些功能慢,执行的语句是什么.
  2. 系统的接口语句问题.
  3. 系统中还有哪些消耗资源高的语句,是否能优化.

调研后,我遇到了最常见也是最大的问题: 语句慢由于程序!很多人看到这会说程序慢就改呗,那有啥问题? 问题就在于你来做优化直接了当的和人家开发人员说你程序太烂必须改!如果你是程序开发人员你会有什么样的反应?

他会说:对不起,影响太大改不了!

那么这个优化项目黄了,或者你要付出更大的代价绕过这样的问题.

分析中发现程序使用了大量各种自定义函数,有一定经验的人都应该知道,语句在筛选的列上使用函数是没有办法使用索引查找的,这样相对于这种单表数据就几百甚至几千万的表,是何等的灾难!但是不能冒然突出修改程序,那还能怎么优化呢?大概分析后得出结论,程序主要消耗在几部分:

  1. 部分业务功能语句慢.
  2. 接口语句慢(主要是视图,供其他程序调用).
  3. 还有报表程序.
  • 针对第一部分在不能改程序的情况下,尝试添加计划向导改变语句执行情况;
  • 针对第二部分修改接口视图,包括替换掉函数、添加索引等;
  • 针对第三部分报表这东西不是短期就可以优化的,所以再原有镜像的方案上添加快照,实现了简单的读写分离,直接分走;

语句优化的效果:

  • 优化前

  • 优化后

  • 优化前

  • 优化后

预期:

90%消耗高的语句都得到了优化,系统应该可以快起来了,CPU、内存指标也应该正常了!

结果:

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读