案例二:11月24日供应商后台管理无法打开

一、故障描述:供应商后台管理无法打开

二、故障处理过程
10:42 【阿里云监控告警】
10:43 【流云】收到告警(db_metadata数据库cpu近100%),根据dms的监控可知,是由于有慢sql引起了数据库CPU近100%,然后立即找运维协助
10:46 【运维】对慢sql:(SELECT id, top_pass_id, parent_code, district_code FROM db_metadata.sp_top_pass_district WHERE top_pass_id = 38 AND parent_code = 0 ORDER BY district_code ASC)
添加限流、杀掉sql相关的活跃会话,然后数据库恢复正常
添加索引:ALTER TABLE db_metadata.sp_top_pass_district ADD INDEX idx_toppassid_districtcode (top_pass_id, district_code);
同时把限流关闭,目前数据库服务恢复正常,但配置中心的服务未恢复;
10:47【白杨】在运维限流的过程中,在paas平台重启服务,但由于运维平台分配的硬件资源不足,导致重启时创建新实例不能成功
10:53【若谷】删除一个老的实例,才成功重启配置中心服务,配置中心服务恢复正常,但外部依赖服务仍未恢复
11:00:经分析之前配置中心服务是4个节点,重启后有3个节点,此时部分服务节点的cpu较高
11:08【若谷】新增一个配置中心实例
11:10 配置中心与外部服务都恢复正常

三、影响产品线及影响面
采购平台
前台能力域

四、故障原因
1.根据阿里云dms的监控诊断分析:
配置中心服务在运行正常的情况下数据库的cpu最高使用率是:30%左右,会话连接的平均数是:3个上下。
当出现故障,10点36分15秒cpu突然增高以100%,然后10点36分15秒数据库连接数增加到70,随后数据库连接数不断增加。
从监控中显示有两个sql占用数据库连接较多,然后收到数据库监控关于慢sql的告警中包含了这两个sql;
但是这sql及相关功能在真线环境已运行一年多了,而且这sql从没有出现在之前关于数据库监控慢sql的告警邮件中,初步分析与服务关系不大。
在这里插入图片描述
2.关于引起慢sql的原因有:数据量突然增加或相关接口的访问量突然增加。然后从这两个角度分析:
监控中的相关的sql近一年项目中没有改动;sql涉及的数据,在近一周也没有变化;此sql对应接口的访问量,在当天也没有出现突然的增加;
详情见以下分解:
在这里插入图片描述
在这里插入图片描述
由图可知的问题如下:
问题1:数据库连接数较高的sql
SELECT id, top_pass_id, parent_code, district_code
FROM db_metadata.sp_top_pass_district
WHERE top_pass_id = 38
AND parent_code = 0
ORDER BY district_code ASC;
SELECT id, top_pass_id, parent_code, district_code
FROM db_metadata.sp_top_pass_district
WHERE top_pass_id = 31
ORDER BY district_code ASC;
相关的接口:/api/splinter/topPass/anony/fetchDistrictTree
功能描述:根据区划查询顶通关联的区划

分析此接口相关的数据:
1.发版方面
配置中心最后一次发版本是11.12
2.相关表中的数据量方面
顶通相关表的数据,最后一次更新数据在:11.7号,相较于11.23日数据量一致
3.接口访问量方面
故障时间是10:36左右,拉取这个时间点前后的访问量对比。
11.24号(故障当天)08点00-11点00 接口的访问量:1,298,093

在这里插入图片描述
11.23号(故障前一天)08点00-11点00 接口的访问量:1,304,953
在这里插入图片描述
根据这些方面分析的结果是:
sql涉及数据的数据量方面没有增加,sql涉及接口的访问量也没有大幅度的增加,目前可以排除是服务本身的原因引起的慢sql问题。

3.另一方面:先是因为数据库cpu达到100%,然后才引起数据库连接数快速增加,而导致慢sql的问题,所以分析什么原因引起的连接数据增加;
在根据dms的监控可知,在这个时间段内有数据库的连接数据,但监控相关sql没有记录,所以请阿里云相关人员协助排查,故障时间期间阿里云服务是否正常。

在这里插入图片描述
阿里云相关人员提供的回复:
在这里插入图片描述
阿里云:怀疑当时锁等待造成的,目前没有现场,分析不了锁情况。同时建议您开启SQL洞察,可以看到当时SQL详细情况,若下次出现类似情况,可以使用SQL洞察协助分析。

根据排查与分析,初步断定是阿里云方面引起的问题,但阿里云相关人员协助排查当时有无相关变动,最后建议使用sql洞查的功能监控服务的所有sql,
目前我们开启15试用,若再次出现问题将重新定位。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值