对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。
Docs 菜单

Atlas 服务限制

Atlas 限制您可以创建的每种组件的数量以及允许连接到集群的数量。对于集群,允许的连接数量取决于集群层。下表概述了组件和连接限制。

重要

如果其中任何限制对您的组织造成问题,请联系 Atlas 支持部门。

组件
Limit

30

单区域集群中的分片

无硬性限制,但有关超过 个的分片,联系MongoDB支持部门。80

多区域集群的跨区域网络权限

100

项目中任何两个区域之间的节点总数不得超过 100。如果项目中已有包含 100 个或更多跨区域节点的集群,则无法创建多区域集群。

每个副本集或分片的可选举节点

配置服务器层级(最小和最大)

M30

Atlas会根据集群的层级和类别设置 limits for concurrent incoming connections。net.maxIncomingConnections 设置限制了节点一次保持打开状态的传入连接总数。

Atlas连接限制应用于每个节点。对于分片的集群, Atlas连接限制应用于每个mongos路由器。 mongos路由器的数量等于所有分片的副本集节点数量。

以下示例描述了一个Atlas Core集群。 Atlas Infinite集群有两个可选举节点,因此可以为读取提供服务的节点数量取决于您添加的只读节点和分析节点。

Atlas无限集群使用 M10 到 M60集群层,因此较大层的限制不适应用它们。

例子

您的 M10 Atlas Core集群有三个节点,每个节点的 1500 连接限制。 Atlas为每个节点保留 10 个连接。如果您将读取偏好(read preference)设立为从节点(secondary node from replica set), Atlas可以从两个从节点(secondary node from replica set)节点读取数据,以实现组合的 2980 连接限制。

示例,如果您有一个三节点 M10集群,每个节点的连接数限制为 1500 个,Atlas会为每个节点保留 10 个连接数。如果您将读取偏好(read preference)设立为从节点(secondary node from replica set), Atlas可以从两个从节点(secondary node from replica set)节点读取数据,以实现组合的 2980 连接限制。

仅当通过受支持版本上的集群的专用链接进行连接时,才会对Amazon Web Services实施集群连接限制:

  • 8.1 和 v8.1.0+

  • 8.0 和 v8.0.10+

  • 7.0 和 v7.0.22+

注意

Atlas 为每个 Atlas 集群保留少量连接,用于支持 Atlas 服务。要了解有关 Atlas 保留连接的更多信息,请联系 Atlas 支持部门。

选择您的云提供商,查看每个集群层和类的连接限制:

注意

Atlas根据内存和计算使用量而不是连接数进行扩展。但是,增加的活动连接可能会增加负载,如果其他解决方案不可行,则可能需要扩展集群。

如果您接近或已经达到Atlas 集群可以处理的最大连接数,请选择以下选项之一来重新分配连接或增加限制:

Atlas应用连接速率限制来保护集群可用性并确保最佳性能。连接速率限制限制了集群中每个节点每秒可以接受的新传入连接的数量。此限制与节点可以同时保持打开状态的最大连接数分开,连接限制和集群层中对此进行了描述。

当节点达到其连接速率限制时, Atlas会对新的连接尝试进行排队。如果过载持续一段时间, Atlas会断开一些连接。此行为可防止连接过载,从而保持集群可用性。

是否应用连接速率限制取决于您的集群层和MongoDB版本:

  • M10 和 M20集群层:始终开启。

  • M30 以及运行MongoDB 9.0 或更高版本的更高集群层:始终开启。

  • M30 以及运行早于 9 的MongoDB版本的更高集群层。0:始终关闭。

下表概述了所有云提供商的每个集群层和存储类的连接速率限制:

集群层
每个节点每秒的最大新连接数

M10

15

M20

15

M30

24

M40

85

M50

170

M60

320

M80

1000

M90 (仅限Microsoft Azure )

600

M140

1360

M200

1450

M250 (仅限 Google Cloud)

1500

M300

1600

集群层
每个节点每秒的最大新连接数

R40

24

R50

85

R60

170

R80

320

R200

1000

R300

1360

R400

1450

R600

1500

R700

1600

集群层
每个节点每秒的最大新连接数

M40_NVMe

24

M50_NVMe

85

M60_NVMe

170

M80_NVMe

320

M200_NVMe

1000

M300_NVMe

1360

M400_NVMe

1450

M600_NVMe

1500

连接速率限制不包括来自Atlas内部服务的连接。

本部分适用于Atlas Core 集群。

虽然对单个集群中的集合数量没有硬性限制, 但如果集群为大量集合和索引提供服务,其性能可能会下降。 集合越大,对性能的影响越大。

Atlas 集群层建议的集合和索引的最大合并数量如下:

集群层
建议的最大值

M10

5,000 个集合和索引

M20 / M30

10,000 个集合和索引

M40+

100,000 个集合和索引

如果超过建议的最大集合和索引数,数据库操作的运行运行可能会减慢。检查点需要更长的时间才能完成,这会降低操作速度。在某些情况下,如果您的使用量超过系统的 ulimit 设置,则操作可能会停止,该设置对您可以使用的系统资源数量设立了限制。

提示

要学习;了解有关 ulimit 设置的更多信息,请参阅 MongoDB Server 手册中的 自管理部署的 UNIX ulimit 设置。

超过建议的最大资源数量对性能的影响取决于集合的使用情况。如果一致使用大多数现有集合,则更有可能影响性能。

如果需要增加Atlas 集群中集合或索引的数量,请考虑升级集群层。

本部分适用于Atlas Core 集群。

大量索引会在基础集群上产生大量负载,并可能扰乱您的工作负载。集群可以支持的索引数量取决于集群层和工作负载。随着索引计数的增加,M10 等较小的集群层可能会出现性能下降或内存不足错误的情况。从少量索引开始,并在扩展时监控集群的资源使用情况。

组件
Limit

每个 Atlas 项目的数据库用户

100

每个 Atlas 项目的 Atlas 用户

500

每个 Atlas 组织的 Atlas 用户

500

每个 Atlas 组织的 API 密钥

500

每个 Atlas 项目的访问列表条目

200

每个 Atlas 团队的用户

250

每个 Atlas 项目的团队

100

每个 Atlas 组织的团队

250

每个 Atlas 用户的团队

100

每个 Atlas 用户的组织

250

每个 Atlas 付款组织的关联组织

250

每个 Atlas 项目的集群

25

每个 Atlas 用户的项目

250

每个 Atlas 组织的项目

250

每个 Atlas 项目的自定义 MongoDB 角色

100

为每个数据库用户分配的自定义角色

20

25

每个 Atlas 项目的网络对等连接总数

50

Atlas 根据 CIDR 区块和为项目选择的地区,限制每个网络对等连接的节点数量。

每个 Atlas 项目的待处理网络对等互连

25

50

Azure Private Link 每个地区的可寻址目标节点数

150

Google Cloud GCP Private Service Connect 每个地区的可寻址目标节点数

50

每个 Atlas 项目的全球集群分片密钥

40

注意

可寻址目标节点是指每个地区、每个项目可以通过私有端点访问的MongoDB节点的最大数量。目标节点包括副本集中的mongod实例、分片的集群中的mongos实例以及项目中所有专用集群中的BI Connector for Atlas实例。

每个项目只能部署一个免费集群(以前称为 M0)。但是,如果您拥有MongoDB的销售合同,则也许可以为每个项目部署更多免费集群。要学习;了解更多信息,联系MongoDB销售代表。

Atlas 限制组件特定标签的长度。

组件
字符限制
正则表达式模式

集群名称

64 [1]

^([a-zA-Z0-9]([a-zA-Z0-9-]){0,21}(?<!-)([\w]{0,42}))$ [2]

项目名称

64

^[\p{L}\p{N}\-_.(),:&@+']{1,64}$ [3]

组织名称

64

^[\p{L}\p{N}\-_.(),:&@+']{1,64}$ [3]

API 密钥说明

250

[1] 如果启用了仅对等互连模式,集群名称字符数限制为 23。
[2] Atlas 使用集群名称的前 23 个字符。这些字符在包含的项目中必须是唯一的。少于 23 个字符的集群名称不能以连字符 (-) 结尾。超过 23 个字符的集群名称不能将连字符作为第 23 个字符。
[3](1、2)组织和项目名称可以包含任何 Unicode 字母或数字以及以下标点符号:-_.(),:&@+'。

要了解有关不支持的命令的更多信息,请参阅 免费和灵活集群和 付费集群的不支持命令。

本部分适用于Atlas Core 集群。

多云部署具有不同的限制。要了解更多信息,请参阅多云部署限制。