首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于正常使用PostgreSQL的AWS实例100% CPU利用率

用于正常使用PostgreSQL的AWS实例100% CPU利用率
EN

Stack Overflow用户
提问于 2019-02-14 13:49:31
回答 1查看 1.5K关注 0票数 0

我使用的是AWS 9.4。我面临一个CPU利用率很高的问题。实例类型为t2.xlarge (16 gb ram)。

所有的时间,我可以看到非常低的使用公羊,即14-1GB的免费。

但相比之下,cpu利用率是100%,有100个活动连接。

我在pg_stat_activity中检查了所有查询,慢速查询日志。没发现什么不对。虽然它涉及到100%的CPU利用率和我的应用程序变得没有功能,即使是非常不活跃的连接。

什么是降低高CPU利用率相对于如此高内存的解决方案?

当它达到100% CPU时,我的写入IOPS是400计数/秒,读取IOPS是8.5计数/秒。

我需要处理300个并发连接时,有时有很高的流量在我的网站。RDS实例的理想配置应该是什么?

EN

回答 1

Stack Overflow用户

发布于 2020-02-24 20:07:52

虽然我支持在其他地方回答有关配置的问题(比如允许从内存而不是磁盘中提供更多查询的理想work_mem设置),但较高的CPU使用率也与次优查询有关,因此部分是一个软件问题。

从软件的角度来看:即使没有非常长的查询陷入困境,通过使当前的查询返回得更快,仍然可以获得额外的容量。

  1. 这个问题中的负载听起来偏向于写操作,但是如果这些操作包含许多更新,或者如果读取时间过长,那么仍然有可能通过索引覆盖这些列来更有效地完成这些操作。
  2. 如果有频繁的插入或删除,则可能有助于在应用程序中对这些内容进行批次处理,并节省查询的开销,以换取额外的延迟。这还将使您减少应用程序的池大小,并避免在50个实际让查询完成速度更快的情况下具有100个并行连接的开销。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54691976

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档