为何CPU利用率低但平均活跃会话高

0

【以下的问题经过翻译处理】 最初我的RDS Postgres数据库使用 t2.micro 数据库实例类型。

查询变得非常缓慢,当我查看rds控制台时,看到CPU利用率很低,但当前活动会话条是红色的。

您可以在这个截图中看到,当我查看性能洞察时,会话数量超过了vCPU数量。 https://i.imgur.com/1QoVPBf.png

主要问题似乎是在等待CPU。

因此,我现在已经将我的db实例增加到了t3.large,CPU利用率非常低,当前活动会话数量在限制之下。 https://i.imgur.com/K7sRLAi.png

但我不明白为什么 RDS 控制台最初显示 CPU 利用率很低,而实际问题似乎就是 CPU 本身。

profile picture
专家
已提问 9 个月前20 查看次数
1 回答
0

【以下的回答经过翻译处理】 您使用的是可突增性能实例。对于一个t2.micro,这意味着您会得到一个vCPU的10%的基准性能。当您使用少于基准值时,您会积累CPU积分。当您使用多于基准值时,您会消耗CPU积分。当您耗尽CPU积分时,您将被限制在基准性能。因此,您将看到10%的CPU利用率,但这意味着您使用了100%的基准值。您可以通过查看CPUCreditBalance和CPUCreditUsage来验证您是否用尽了CPU积分: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MonitoringOverview.html

有关可突增性能实例的更多说明,请参见: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html

您已经采取了我推荐的两种方法之一,即升级到t2.small;现在您的基准性能是vCPU的20%。另一种方法是使用RDS通过无限模式支持的t3.micro,这些实例仍然可以突增,但是可以容纳更长时间的突增,之后会收取额外使用量的费用(而非限制在基准性能)。T3比T2快30%,更快的CPU意味着您可以在不消耗积分的情况下完成更多操作,无限模式允许您借用未来的积分,如果您用尽积分,只需支付额外费用而不是被限制在低基准性能下,t3.micro仍然可以解决您的问题。

profile picture
专家
已回答 9 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则