一次系统访问“慢”的排查过程

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: 项目背景:某电商平台系统演示,在上午访问各模块时,响应时间均正常。在下午十二点半左右,访问“采购计划”,“订单查询”时,出现响应时间超过十秒的现象。在一点半就要开始演示,所以进行紧急处理。 涉及到的阿里产品:EDAS ,DRDS,RDS,MQ,DTS ----排查思路:因为不确认是网络还是系统问题,所以进行双向排查。
     项目背景:某电商平台系统演示,在上午访问各模块时,响应时间均正常。在下午十二点半左右,访问“采购计划”,“订单查询”时,出现响应时间超过十秒的现象。在一点半就要开始演示,所以进行紧急处理。
     涉及到的阿里产品:EDAS ,DRDS,RDS,MQ,DTS
    

----
排查思路:因为不确认是网络还是系统问题,所以进行双向排查。

       1. 排查内网以及外网访问延迟
       2. 登录edas平台根据服务监控查看系统调用链

网络验证

   1.  telnet 应用ip  端口      ##连通性没有问题
   2.  netstat -antulp | grep 端口   ##没有网络延迟现象

鹰眼调用链查看

image
观察发现应用耗时普遍偏高,点击查看调用链
image
选择其中一个TraceId进入查看详情
image
可以看到大量时间都耗在数据库查询上

查看相应数据库

直接查看DRDS下面挂载的RDS资源情况
发现其中一个RDS的CPU从中午十二点半开始逐渐升高达到98%
image
发生这种情况很奇怪,就拉上开发,咨询相应业务逻辑

发现A中心通过MQ调用B中心,而今天中午有大量数据落库,导致业务逻辑大并发处理数据,由此导致cpu升高,因为客户处理的这张表未进行分库分表,所以压力都集中在一个RDS上

解决

数据落库是通过DTS数据订阅实现的,所以暂停了数据订阅通道(数据订阅数据保存时间为24小时)
升级cpu过高的rds
系统访问正常,演示正常进行。
总结:梳理的时候觉得问题挺明显的,但是处理时,对业务逻辑不完全了解,根本无法定位到实际问题所在,还有数据库的前期分库分表设计真的太重要了。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
缓存 JavaScript 前端开发
服务器反应慢如何解决?
通常来说,访问者会在最初的几秒钟内决定是留在您的网站还是离开。如果页面加载时间超过五秒,访问者离开的可能性就会增加 90%。所以,作为站长们,必须减少服务器响应时间,以确保其网站加载速度更快。以下是减少网站服务器响应时间的几种简单方式。
89 19
|
SQL 前端开发 测试技术
一次纯线上接口异常的排查过程
一次纯线上接口异常的排查过程
113 0
|
12月前
|
Java Linux
|
11月前
|
Java 调度
CPU突然飙高系统反应慢,是怎么导致的?有什么办法排查?
面试过程中,场景类的问题更容易检测出一个开发人员的基本能力。这不,有一位小伙伴去阿里面试,第一面就遇到了关于“CPU 飙高系统反应慢怎么排查”的问题?当时这位小伙伴不知从何下手。 今天,我给大家分享一下我的解决思路。
137 0
|
Java
【线上问题排查】内存泄漏排查(模拟真实环境)
【线上问题排查】内存泄漏排查(模拟真实环境)
177 0
|
SQL Arthas druid
MyBtais 批量插入慢排查及分析(后续)
MyBtais 批量插入慢排查及分析(后续)
150 0
|
消息中间件 运维 监控
线上踩坑记:项目中一次OOM的分析定位排查过程!
线上踩坑记:项目中一次OOM的分析定位排查过程!
|
运维 JavaScript 前端开发
记录两次多端排查问题的过程
记录两次多端排查问题的过程
|
关系型数据库 Java 应用服务中间件
记一次并发引起的问题及排查过程
聚合支付系统(第四方支付),协议支付模块一直有个小问题。 商户调用协议支付接口,该模块会调用下层第三方支付渠道的协议支付服务,如果第三方支付渠道没有同步返回支付结果,则协议支付模块会通过定时任务向第三方支付渠道批量第查询支付结果(每查一笔订单就调一次第三方支付渠道,“批量”相当于并发调用第三方支付渠道)
记一次并发引起的问题及排查过程

相关实验场景

更多