线上mysql cpu过高

本文分析了线上MySQL服务器出现CPU1000%的背景和原因,主要集中在大量的慢SQL和高QPS导致的问题。同时,讨论了内存过高对服务端的影响,如RPC调用超时,揭示了数据库性能问题对整个服务链路的连锁反应。
摘要由CSDN通过智能技术生成


前言

线上mysql服务器cpu1000%的分析


一、背景

早上接到mysql的报警,cpu 800%,紧接着发现线上服务的官网都打不开了,服务报警接踵而至。

二、分析

1.mysql cpu 过高分析

好文参考
文中要点:

单位时间 CPU 资源 = 查询执行的平均成本 x 单位时间执行的查询数量

显然,cpu使用率与【查询执行的平均成本】和【单位时间执行的查询数量】线性相关,而这两项就是我们常说的慢sql以及数据库QPS。

所以:一般而言,cpu使用率飙升可归纳为以下两点:

  1. 大量的慢sql占用了cpu资源,拖垮了数据库,这类的慢sql常常表现为:查询的数据量过大,全表扫描、锁抢占甚至死锁、复杂查询等
  2. QPS过高,本质上是数据库的承载的流量过大

2. mysql 内存过高对服务端的影响

1、现象

线上正常请求通过网关调用服务A,A调B,依次出现了rpc调用超时。
分析:
https://www.processon.com/diagraming/60aceda4e401fd373eb71d61


总结

rpc调用下游服务超时,依次查看下游服务超时的原因

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值