RDS数据库监控CPU使用率高
问题症状 RDS数据库经常收到CPU使用率高的监控报警,找不到具体的原因,只能重启RDS实例来解决。 问题原因 要彻底解决监控报警问题,需要找到问题的根源,CPU使用率高的原因,一般情况下导致CPU使用率有以下几个原因: 系统执行应用提交查询(包括数据修改操作)时需要大量的逻辑读 实例的 QPS(每秒执行的查询次数)高 查询执行成本(查询访问表数据行数 avg_lgc_io)高 解决方案 生成诊断报告,查看诊断报告提供的优化建议进行SQL优化 对于由应用负载高导致的 CPU 使用率高的状况,使用 SQL 查询进行优化的余地不大,建议从应用架构、实例规格等方面来解决,例如: 升级实例规格,增加 CPU 资源。 增加只读实例,将对数据一致性不敏感的查询(比如商品种类查询、列车车次查询)转移到只读实例上,分担主实例压力。 使用阿里云 DRDS 产品,自动进行分库分表,将查询压力分担到多个 RDS 实例上。 使用阿里云 Memcache 或者云 Redis 产品,尽量从缓存中获取常用的查询结果,减轻…