Docs 菜单
Docs 主页
/
MongoDB Atlas
/ /

触发器限制

在此页面上

  • 聚合(Aggregation)
  • 批量加载
  • 时间序列集合
  • 无服务器实例
  • 联合数据库实例
  • Change Streams
  • 数据库命令
  • MongoDB 版本要求
  • 查询选项
  • 查询结果
  • 请求流量
  • 连接池化

在设计工具和客户端如何通过触发器与MongoDB交互时,需要记住几条准则。 在决定如何构造查询、选择要使用的CRUD和聚合操作以及确定如何处理并发工作负载时,请记住本指导。

触发器支持 系统函数 中的所有 聚合管道阶段 $currentOp$indexStats,但 和 除外。

出于安全考虑,仅在用户函数中支持一部分聚合管道阶段。

有关可用的管道阶段及其允许的函数上下文的列表,请参阅聚合。

当数据批处理加载到MongoDB Atlas时,当Atlas处理更改时,您可能会发现数据在设备上显示有延迟。

无法 时间序列集合 上定义 数据库触发器 。这是因为时间序列集合尚不支持变更流。

无法 无服务器实例 上定义 数据库触发器 。这是因为无服务器实例不支持 变更流。

无法 联合数据库实例 上定义 数据库触发器 。这是因为联合数据库实例不支持变更流。

Atlas根据集群的大小,限制针对给定集群打开的 变更流 的总数。 下表列出了每个集群大小的限制:

集群大小
最大变更流数
免费套餐 (M0)
5
共享集群 (M2/M5)
10
小型专用集群 (M10/M20)
100
标准集群 (M30/M40)
1000
标准集群 (M50M90)
1000
高性能集群 (M100+)
1000

注意

Atlas在与数据库trigger关联的每个集合上打开单个变更流。

通过传输协议连接到MongoDB 集群时,您可以调用有限的一部分数据库命令。 有关支持的命令列表,请参阅数据库命令。

注意

App Services支持Atlas Function中的任何数据库命令。

您可以访问权限CRUD MongoDB版本的大部分3.6 和聚合功能。但是,触发器并不支持标准工具和客户端提供的所有操作和功能。 有关通过触发器连接到MongoDB时可用的特定MongoDB操作的列表,请参阅CRUD改查和聚合API参考。

触发器支持系统函数中的所有查询选项。 有关通过触发器连接到MongoDB时可用的特定选项的列表,请参阅查询选项。

通过触发器执行的MongoDB查询最多可以返回50个、 000文档。 如果需要返回更多文档,请考虑对查询进行分页。

Atlas将请求流量限制为以下默认值:

Atlas可以处理数倍于上述限制的请求。 但是,这些限制是为了确保应用程序以负责任的方式扩展,并防止 DOS 攻击和意外的计费。

您可以通过提交支持票证来请求更高的限制。

Atlas使用连接池化来减少在请求和trigger执行之间频繁打开和关闭连接所产生的开销。 连接根据需要打开。 连接池化取决于多个因素:

  • 集群层。集群层越高,池中可用的连接越多。

  • 部署模式。全球部署在每个地区使用多台服务器,因此整体上具有更大的连接池。

  • 服务。每个服务都有一个独立的连接池,因此应用中服务的数量不会影响可用连接的数量。

后退

日志