返回首页 | 申博娱乐APP下载

合作共赢、快速高效、优质的网站建设提供商

更多精品源码-尽在织梦模板-www.moke8.com

网站开发线上毛病处理——发布次序过错引起的数据库反常

时间:2017-11-03 编辑:admin

今天体系版别发布,多个要素凑到一起引发线上毛病。这个排障进程做的不是很好,存在许多改善的当地,作为排障的反面教材,共享给我。

先说下今天版别内容:User体系周版别含service使用和数据库脚本两部分,其间数据库有两个脚本:001-收拾不合规矩的设备登陆记载和设备记载;002 - 第三方账户绑定表新增表字段。

16:41 运维人员开端发布版别,开端履行脚本; 16:42 运维人员开端发布service;此刻脚本001脚本还未履行完结; 16:50 产品司理找研制承认体系是否存在问题,导致办理端无法查询用户信息;研制开端介入查验; 16:59 研制人员接到搭档电话反应,用户登录功用也存在问题; 17:01 运维人员发现并反应脚本001还未履行完结,履行时刻过长; 17:03 研制人员置疑001脚本收拾数据时锁库,要求DBA kill掉001脚本履行进程; 17:07 DBA kill掉001脚本履行进程,可是效劳未康复; 17:08 研制人员置疑service使用未能从头获取到数据库连接池,故要求运维人员重启service效劳; 17:10 运维完结service重启,效劳未康复; 17:11 研制人员检查使用日志,发现很多报错 ORA-00904: "XXXXX": 标识符无效 ,检视版别内容中,002脚本存在新增字段XXXX的脚本; 17:12 研制人员收拾思路揣度:001脚本未履行完结,进程kill后,布置渠道不会继续002脚本,但因为运维先行发布了service,所以导致上述ORA-00904报错; 17:12 要求运维人员手动履行002脚本; 17:13 运维人员手动履行002脚本; 17:14 研制人员验证效劳并监控日志,承认效劳现已康复。排障完毕。

整个毛病处理中,我们们发现 毛病发现 进程继续了近8分钟, 毛病定位 花费了22分钟, 毛病处理 花费了1分钟。其间"毛病发现","毛病定位"两个阶段存在严重缺乏,下面逐个分析。

毛病发现 进程

最大的问题在于:效劳缺少告警,未能及时发现体系毛病。从16:42 service开端发布,毛病发生,到16:50 研制人员介入毛病处理,期间没有任何告警出来,终究是因为用户反应体系存在反常,才知晓体系毛病。理论上,如果存在告警体系,1分钟之内便能够发现毛病,能够节省7分钟,7分钟关于出产体系来讲是很名贵的。

线上service效劳有访问量、时延、错误率的监控,可是没有依据这些监控数据的告警,后续需求补上。

毛病定位 进程

开始研制人员接到产品司理的反应只要用户办理端部分查询功用不可用,便没有进步优先级,让团队其他人一起介入处理;后接听到其他团队反使用户登录存在问题时,才介入,并进步优先级;这反映出团队没有一个杰出运作的毛病排查协作机制,不能敏捷地完结毛病辨认及毛病晋级,研制人员认识缺乏,需求加强训练。

在毛病定位进程中,研制实践地比较好的技巧在于:

在得知运维搭档给到的 数据库脚本履行时刻过长 的信息后,第一时刻要求DBA杀掉该履行脚本链接,此行为可能无法处理根本问题,可是关于此类反常现象的免除一般对毛病康复和体系运转有协助,因而,在毛病原因不太明亮的情况下,这个行为是有利于毛病康复的,值得必定。 快速检视版别改变内容对毛病带来的影响。

做的欠好的当地:

研制人员在要求DBA杀掉脚本履行链接的一起,没有去检查使用日志,以终究承认问题点。

依据此次排障进程中,后续再如下几个方面需求改善:

在团队内宣导线上排障的思路,拟定毛病排查的协作机制,进步研制人员的排障认识; 完善效劳告警,在现有监控数据上,添加效劳错误率的告警,以便敏捷发现毛病,为排障争夺更多时刻; 布置渠道需求参加 版别依靠 强操控,保证依靠版别在被依靠版别之后发布; 效劳优化,登录效劳和非要害事务表解耦,进步登录等要害效劳的稳定性。


浏览:

网站建设

流程

    网站建设流程