【问题标题】:Effects of upgrading MongoDB server tiers升级 MongoDB 服务器层的影响
【发布时间】:2021-07-23 07:17:37
【问题描述】:

我有一个 AWS ec2 服务器,它正在运行一个连接到 MongoDB atlas 分片集群的应用程序。应用程序会定期变慢,我会收到来自 MongoDB 的关于高 CPU 窃取百分比的警报。我希望升级我的 MongoDB 服务器层,发现选项的唯一区别是更多的存储空间和更多的 RAM,但 vCPU 的数量是相同的。我想知道是否有人对增加的 RAM 是否有助于我收到的 CPU 窃取百分比警报以及它是否有助于加快应用程序有任何见解?否则,我是否最好升级我的 AWS 服务器层以获得更多 CPU?

感谢任何帮助!谢谢:)

【问题讨论】:

    标签: mongodb amazon-ec2 cpu ram


    【解决方案1】:

    如果您主要受 CPU 限制,我认为更多的 RAM 不一定会有所帮助。但是,如果您使用的是 MongoAtlas,那么随着扩展选项的增加,替代层肯定会提供更多的 vCPU。

    您还可以启用自动缩放并设置最小和最大层以允许数据库根据需要进行缩放:https://docs.atlas.mongodb.com/cluster-autoscaling/

    但是,请注意,MongoAtlas 具有非常激进的横向扩展和非常糟糕的横向扩展。我认为缩减只会在 24 小时后进行,因此成本会很高。

    【讨论】:

    • 嘿,感谢您的回复,替代层确实提供了更多的 vCPU,但我不想为我的应用程序提高这么高(我会得到的最大值是 M30)。我也不想设置自动缩放,因为您提到的激进的横向扩展和糟糕的横向扩展。这可能是一个愚蠢的问题,但可以肯定的是,升级我的 aws ec2 实例上的 CPU 不会对 mongo 的 vCPU 产生任何影响,对吧?
    • 是的,没错。您的 EC2 实例与 MongoAtlas 隔离,因此增加 vCPU 不会产生任何实际影响。如果您不想升级到 M30 以上,那么您可以向内看。在数据库上运行的工作负载是什么?工作量是否可以排队?是否有效率改进,例如可以添加索引以减轻一些压力。
    • 太棒了,非常感谢!很可能有一些改进,比如可以添加索引,但我希望通过升级获得更简单的解决方案哈哈哈。我对当前正在完成的工作负载没有任何问题,当它运行高时它不会对应用程序产生任何可怕的影响,我只是不喜欢警报说 CPU 窃取百分比已经很高所以想知道可以做些什么来停止那。似乎 M30+ 使用专用的 vCPU,这意味着没有机会窃取 % 运行,所以这可能是要走的路。感谢您的回复,非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-25
    • 1970-01-01
    • 2016-05-04
    • 1970-01-01
    相关资源
    最近更新 更多