RDS链路卡慢问题的诊断

经常会收到用户反馈在使用RDS的过程中出现卡慢,闪断地情况,当出现此类问题的时候,首先我们要进行一下测试,看看问题出现在哪一个阶段,RDS给到用户的是一个DNS地址,其实他包括三个阶段:DNS–>VIP–>DB

       我们可以在本地的应用服务器(VM)上通过简单的ping命令,或者数据库的客户端去不断的连接测试RDS,来获取每次连接RDS的响应时间(RT)。在正常情况下RT应该小于20ms以内,如果超出10ms,则表明了RDS的网络链路出现了异常,这个时候我们就需要去排查一下是在哪里出现了问题:

(1)    当DNS链路服务出现问题:

当我们测试出DNS的连接比较耗时,而使用vip连接正常的时候,则表明DNS解析比较耗时,此时的问题则出现在了DNS服务上面,这个时候可以尝试换用其它的DNS服务器,或者启用DNS缓存服务,或者暂时在hosts文件中绑定DNS和IP地址,等DNS服务恢复正常后在取消绑定(我们强烈建议在正常情况下不要绑定RDS的DNS和IP地址,或者直接使用IP地址进行访问,因为RDS的IP地址可能会发生改变,绑定ip或者直连ip的方式会导致RDS访问出错);

(2)    当VIP 链路出现问题:

当我们测试超出DNS连接比较耗时,同时使用vip连接也比较耗时的时候,则表明RDS的VIP链路出现了异常,这个时候可以提交RDS的工单,让后端的人员进行排查。

(3)    正常情况下的链路表现:

正常情况下,通过DNS或者vip的方式去连接RDS,RT应该在20ms以下。

案例分析一:

用户应用程序从凌晨0:05左右突然开始出现连接RDS超时,RDS,ECS的cpu,网络,io负载都不高,已经影响用户的正常使用,用户的报错截图:

第一步:获取链路RT

为了验证用户所说的APP连接RDS出现连接超时的情况,我们需要部署监控,看看监控中是否与应用中的超时时间一致,于是在用户app以及我们的一台vm上部署sqlping,用于实时探测用户的rds是否存在连接超时的情况:

用户端的APPàRDS测试:(DNS连接)

在我们自己vm上部署的探测测试:(DNS连接)

可以看到无论从用户本地的app环境去连接RDS,还是从我们自己的vm去连接RDS,都是非常快的,没有出现过超时:所以链路上是没有问题的;

最后建议用户从业务上去排查是否存在异常,最终定位应用异常导致。

案例分析二:

用户反馈实例出现写入速度过慢.写入速度不如正常状态下1/10.

排查用户的RDS,ECS的cpu,io负载都不高,但在数据库中发现了有network io的等待,是不是网络出现了异常,所以这个时候需要测试正常的一次连接RDS需要消耗多久的时间,通过SQLping发现了重要线索:

用户在3台不同的vm上去连接测试RDS,发现都出现了大量的连接时间高或者超时,证明了RDS的链路上确实存在了问题,这个时候你可以提工单进行反馈;进一步去探测DB节点的RT,结果发现在后端的DB服务器上出现了异常,最终定位问题在后端的物理服务器上硬件出现了问题,在替换硬件后问题得以解决。

时间: 2024-10-28 13:18:41

RDS链路卡慢问题的诊断的相关文章

电脑主板诊断卡怎么用?

  主板诊断卡怎么用,这里的难点其实主要在于主板诊断卡代码的理解与处理方法 主板诊断卡也叫post卡,是维修主板的必备工具,主板BIOS在每次启动时,都会对系统的电路.存储器.键盘.视频部分.硬盘.软驱等各个组件进行严格的测试,并分析硬盘系统配置,对已配置的基本I/O设置实现初始化,一起正常后,再引操作导系统.主板诊断卡的工作原理就是利用主板BIOS内部自检程序的检测结果,通过代码一一显示出来,从而找到电脑主板故障. 目前市面上的主板诊断卡都是大同小异,有的只是个别的功能差异,对于一些新手朋友来

电脑主板诊断卡工具怎么用 电脑主板诊断卡代码大全

主板诊断卡也叫post卡,是维修主板的必备工具,主板BIOS在每次启动时,都会对系统的电路.存储器.键盘.视频部分.硬盘.软驱等各个组件进行严格的测试,并分析硬盘系统配置,对已配置的基本I/O设置实现初始化,一起正常后,再引操作导系统.主板诊断卡的工作原理就是利用主板BIOS内部自检程序的检测结果,通过代码一一显示出来,从而找到电脑主板故障. 目前市面上的主板诊断卡都是大同小异,有的只是个别的功能差异,对于一些新手朋友来说,建议使用高级一些的主板诊断卡,这种诊断卡支持直接中文故障显示,小白也能轻

使用sysbench测试阿里云RDS PostgreSQL性能

测试PostgreSQL数据库性能的方法很多,例如pgbench, sysbench.sysbench因为使用lua脚本编程,支持多线程,灵活度更高,测试复杂的业务逻辑建议用sysbench.pgbench其实也很好,纯C写的,本身的开销小,测高并发低延迟的场景建议用pgbench. 首先要购买RDS PG数据库实例创建数据库用户还需要购买同机房,与RDS PG同VPC网络ECS或者同经典网络的ECS在ECS端安装PostgreSQL客户端 useradd digoal su - digoal

阿里云数据库,破解大型网站架构设计中的数据存储难题

摘要:3月10日,2017阿里云网站行业热点问题和解决方案线下研讨会在上海举行.在本次研讨会上,阿里云数据库团队产品专家王义成(花名挚尤)针对于大型网站的数据库架构设计以及阿里云ApsaraDB所提供的服务管理和解决方案进行了深入介绍. 分享者简介:王义成(花名挚尤),阿里云数据库团队产品专家,负责阿里云NoSQL数据库的产品规划.加入阿里巴巴近5年的时间,参与过多种云数据库的产品设计工作.目前主要负责阿里云的MongoDB.Redis以及MemCache产品,旨在为广大客户提供安全可靠的数据库

云数据库管家上线公告

        怀揣着"让天下没有难用的数据库"的理念.经历了近半年,超过40个同学的共同努力,我们终于完成了阿里云云数据库(RDS)管理控制台的全面升级,打造出了第一代云数据库管家.   为什么要做云数据库管家? 1."让天下没有难用的数据库" 这句话是阿里云RDS人一直怀揣的理想!阿里云云数据库拥有着全中国最专业的DBA团队.作为云数据库产品经理,有义务和责任将阿里集团专业DBA的数据库维护.优化经验作为产品服务输出给广大的云客户,提供最专业的在线数据库服务.

诊断卡问题集锦 主板故障诊断卡代码查询手册

主板故障诊断卡代码查询手册 查表必读:(注意事项) 1.特殊代码"00"和"FF"及其它起始码有三种情况出现: ①已由一系列其它代码之后再出现:"00"或"FF",则主板OK. ②如果将CMOS中设置无错误,则不严重的故障不会影响BIOS自检的继续,而最终出现"00"或"FF". ③一开机就出现"00"或"FF"或其它起始代码并且不变化则为板没有运

单向链路检测模式消除交换机误诊断

大部分交换机都会有自我诊断的功能.当交换机或者交换机端口由于某些原因出现故障的时候,都会通过指示灯来告知管理员存在的错误.不过有些时候交换机也会存在误诊断的情况.如交换机的端口工作指示灯明明表示正常,但是用户却反映网络不通.如果只是普通的用户,问题还不是很大.但是如果这个端口恰巧是用来进行备份的,那么情况就会比较糟.为了避免这种情况,在实际工作中很多网络管理员都喜欢采用交换机的UDLD模式来消除交换机的这种误诊断. 一.什么情况下会出现误诊断? 误诊断的情形主要是即使当链路或者交换机的端口指示灯

诊断卡跑C0的一种原因

一块型号为P41BMD的845主板,能点亮,但有一些毛病.板子本身很脏,用洗衣粉洗了一下,烘干,结果点不亮了,诊断卡跑C0. 寻寻觅觅开始寻找原因.大约几十分钟之后,开机后居然跳过了C0,一路跑码亮了,之后一直正常了. 分析原因: 应该就是CPU座里面针脚有水分,造成针脚短路,水分干了之后就好了.也就是说,CPU座针脚短路是跑C0的原因之一.  

如何使用主板诊断卡

  主板诊断卡也叫post卡,是维修主板的必备工具,主板BIOS在每次启动时,都会对系统的电路.存储器.键盘.视频部分.硬盘.软驱等各个组件进行严格的测试,并分析硬盘系统配置,对已配置的基本I/O设置实现初始化,一起正常后,再引操作导系统.主板诊断卡的工作原理就是利用主板BIOS内部自检程序的检测结果,通过代码一一显示出来,从而找到电脑主板故障. 目前市面上的主板诊断卡都是大同小异,有的只是个别的功能差异,所以下面介绍的诊断卡的使用方法是比较通用的. 1.诊断显示代码. 2.关电源,取出所有扩展