美文网首页
记一次rds排查cpu爆100%处理笔记!

记一次rds排查cpu爆100%处理笔记!

作者: DragonersLi | 来源:发表于2021-07-11 15:29 被阅读0次

    网站访问报错,排错到mysql,看监控连接数突然暴增。cpu一条直线100%。2核cpu,4G内存最大连接数1200,升级4核cpu,8G内存最大连接数2000.下单付款后,无需重启mysql实例,云数据库RDS/实例列表/基本信息右上角按钮查看进度!

    cpu一条直线100%,最大连接数接近峰值 下单付款后,无需重启mysql实例。自动升级任务进度查看 进度查看按钮,时间不准确,如果感觉太久可提工单让阿里售后技术处理

    查看sleep进程:show processlist; sleep的进程就是人们常说的死连接,它们会一直保持sleep,直到my.cnf里面设置的wait_timeout这个参数值的时间到了,mysql才会自己杀死它。
    在杀死它的时候,mysql还会在error-log里面记录一条Aborted connection xxx to db: 'xxx' user: 'xxx' host: 'xxx'的日志!

    1.使用太多持久连接(高并发系统中 不适合使用持久连接,如果你是用的是pconnect方式,即使你在页面执行完毕前调用mysql_close(),也无法令mysql关闭这个连接。

    2.程序中 没有及时关闭MySQL连接。在负载低的情况下,看不出会有什么问题!页面执行完毕前不调用mysql_close(),那么mysql那边是不会关闭这个连接的。客户端sleep的时间在wait_timeoutinteractive_timeout规定的秒内没有发出任何请求到服务器.
    客户端程序在结束之前向服务器发送了请求还没得到返回结果就结束掉了.

    3.数据库优化不完善 导致执行sql语句过慢

    连接数增多执行如下命令查看一下是否有许多sleep进程 mysql错误日志

    相关文章

      网友评论

          本文标题:记一次rds排查cpu爆100%处理笔记!

          本文链接:https://www.haomeiwen.com/subject/hpvorxtx.html