医院业务软件健康管理实战案例分享

医院业务软件健康管理实战案例分享,第1张

不当人工 *** 作造成的锁等待事件

据数据显示:医院分钟级非空闲等待(锁等待)主因集中于两大领域,本次主要分享不当的人工 *** 作。

1、不当的人工 *** 作:开发人员 *** 作、建索引、报表统计、备份系统……

2、程序质量不佳(代码、结构)造成的锁等待事件80%集中于长事务长事务造成、缺失索引造成……

(一)人工不当 *** 作造成的阻塞事件特征

  • 通常表现为由运维或开发人员 *** 作开发\运维管理工具引起
  • 报表统计---产生全表/全区扫描
  • 创建\重构索引---锁表
  • 数据导入\导出---锁表
  • 数据备份---锁表
  • 更易造成长时间的应用程序卡慢、乃至应用失效事件
  • 无法通过业务运行趋势进行早期预测

(二)使用全景软件发现并定位不当人工 *** 作造成的阻塞问题

真实案例1

(1)问题发现:登录全景软件——问题溯源模块,发现2021-12-0817时左右,系统产生了持续40分钟左右的阻塞问题。

图1:问题溯源界面

问题溯源界面说明:问题溯源界面是全景软件根据内置触发算法生成的,用于记录突发问题及溯源信息的功能模块。不同颜色的方格表示不同问题种类,横纵坐标以小时/日期的方式展示了问题发生的时间,问题方格中的数字表示问题持续的分钟数(该小时内)。

图2 阻塞信息展示

(2)阻塞关系溯源:通过点击“阻塞链图”,展示阻塞与被阻塞的逻辑关系,发现是由PID为861的进程阻塞了PID为583的进程。

图3 阻塞逻辑关系图(桑基图)

(3)进程信息查看:通过进一步下钻发现,阻塞会话PID861由PlsqlDeveloper发起。这是开发人员使用的PL/SQL开发工具。相关人员在使用PL/SQL开发工具,执(begin语句是plsql工具会自动额外执行的语句)行SQL语句,其中有一条语句对z_lcfujian表上产生的锁,该锁会一直存在直到事务结束才会释放。这就造成了锁存在的时间比较长,当有其他会话去访问该表时,就产生了锁等待事件,这是造成此次应用堵塞事件的根本原因。

图4 进程详细信息

真实案例2

(1)问题发现:登录全景软件——问题溯源模块,发现2021-11-13 12时左右,系统产生了持续7分钟左右的阻塞问题。

图5 问题溯源界面

图6 阻塞信息展示

(2)阻塞关系溯源:通过点击“阻塞链图”,展示阻塞与被阻塞的逻辑关系,发现是由PID为997的进程阻塞了PID为1039、900、543、380、204、88、756的进程。

图7 阻塞逻辑关系图(桑基图)

(3)进程信息查看:通过进一步下钻发现,阻塞会话PID8997由Microsoft Windows Operating System发起。这是开发人员使用的SqlServer管理工具。相关人员在使用执行SQL语句,其中有一条语句对mz_patient_mi表上产生的锁,该锁会一直存在直到事务结束才会释放,这就造成了锁存在的时间比较长。当有其他会话去访问该表时,就产生了锁等待事件,这是造成此次应用堵塞事件的根本原因。

图8 进程详细信息

真实案例3

(1)问题发现:登录全景软件——问题溯源模块,发现2021-11-0312时左右,系统产生了持续37分钟左右的阻塞问题。

图9 问题溯源界面

图10 阻塞信息展示

(2)阻塞关系溯源:通过点击“阻塞链图”,展示阻塞与被阻塞的逻辑关系,发现是由PID为724的进程阻塞了PID为746的进程;PID763的进程阻塞了PID为802的进程。

图11 阻塞逻辑关系图(桑基图)

(3)进程信息查看:通过进一步下钻发现,阻塞会话PID724,763由Microsoft SQLServerManagement Studio发起的数据库备份任务,数据库在执行备份任务时,会对涉及到的表上锁,此时如果有涉及到相关表的业务执行时,会遇到阻塞。

图12 进程详细信息

问题处置建议

对于此类不当人工 *** 作造成的阻塞问题,通常有如下建议:

(1)通知相关程序使用者,结束该事务或由数据库管理员杀掉此进程,阻塞即可解除。

(2)尽量避免在业务时间段进行备份作业,最好将此类任务放在夜间非业务时间段执行。

(3)使用行政手段,加强管理。规范开发人员在核心系统上 *** 作行为,如无必要开发人员不应在业务高峰期进行开展影响代码逻辑的 *** 作,尤其是慎重在生产环境执行加锁的 *** 作。类似的行为和 *** 作在不久前曾造成郑大一附院系统停机两小时,800万经济损失,相关信息可参见媒体或百度搜索,因此,务必重视。

下期分享

医院业务软件健康管理实战案例分享(二)

---程序质量造成的锁等待事件

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/791639.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-05
下一篇 2022-05-05

发表评论

登录后才能评论

评论列表(0条)

保存