Docs 菜单
Docs 主页
/ /
Atlas App Services
/

帐单

在此页面上

  • 概述
  • 月度免费套餐
  • 账单结算和付款
  • 使用类型
  • App Services Requests
  • App Services Compute
  • Atlas Device Sync
  • Atlas 边缘服务器
  • 数据传输
  • 举例
  • 移动应用程序
  • 网络应用程序
  • 后端应用程序

Atlas App Services 应用根据每月的使用量计费。有四种独立测量的使用类型可确定每月支付的费用:

  • App Services Requests ,用于衡量 App Services 从客户端应用程序和外部服务发送和接收的请求数量。请求包括函数调用、触发器执行和同步更新,但不包括用户身份验证和被阻止或无效的请求。

  • App Services Compute,用于测量除同步和身份验证之外的所有请求的运行时和内存使用情况。

  • Atlas Device Sync,用于测量客户端应用程序主动同步的总时间。

  • 数据传输,用于衡量 App Services 发送到外部服务和客户端应用程序的数据量。

注意

跟踪使用量

您可以从 App Services 用户界面的应用程序仪表盘追踪应用程序当前月份的使用情况。

MongoDB Atlas 项目中的所有 App Services 应用共享一个月度免费套餐。当月所有低于免费套餐阈值的使用量均不计费。一旦项目超过任何月度免费套餐阈值,App Services 就会开始对该项目任何类型的额外使用量计费。

低于以下月度免费套餐阈值时,可免费使用 App Services:

App Services 作为 MongoDB Atlas 的一部分进行计费。所有适用于 Atlas 的支付方式都可用于支付 App Services,包括预付的 Atlas 积分。与链接的 Atlas 数据源相关的任何成本(例如数据库操作和备份)均与 App Services 分开计费。

有关详细信息,请参阅 MongoDB Atlas 计费

App Services 会统计应用程序接收和处理的请求数量。每次请求均按固定价格计费。

请求可分为以下几种类型:

  • 函数执行,例如当用户从客户端应用程序调用函数时、当函数调用外部服务时或者当失败的 EventBridge trigger调用自定义错误处理程序时。如果正在执行的函数调用另一个函数,App Services 会将这两个执行视为同一请求的一部分。

  • 触发器执行”,例如当数据库触发器与变更事件相匹配时、计划触发器被配置为触发时,或身份验证触发器响应用户登录时。触发器执行后产生的请求还包括触发器调用的所有操作,包括函数和 EventBridge 转发。

  • GraphQL 请求,例如当客户端应用程序发出 GraphQL 查询操作或调用自定义解析程序时。 (GraphQL 已弃用。了解详情)

  • HTTPS 请求,例如当外部服务向传入的 Webhook 或 HTTPS 端点发送通知事件或交互负载时。

  • 同步操作,例如同步客户端上传变更集、App Services 解决上传变更集中的冲突或 App Services 向已连接的同步客户端发送变更集。

    有关同步操作的详细信息,请参阅 Atlas Device 同步协议。

所有传入请求都将计入每月使用量,但以下情况除外:

  • 对身份验证提供者提出的请求

  • 被应用程序的 IP Access List(IP 访问列表)阻止的请求

  • 针对无效 HTTP 端点的请求

价格:2.00 美元 / 1,000,000 次请求(0.000002 美元/请求)

公式:(函数执行数 + 触发器执行数 + GraphQL/Webhook/HTTPS 端点请求数 + 同步更新数)* 0.000002 美元

免费层级阈值: 1 、 000 、 000请求或500小时的计算时间或10 、 000小时的同步运行时(以先到者为准)

例子

估算使用量

请考虑回答以下问题,从而帮助估算应用程序每月将收到的请求数量。

触发器

  • 该 trigger 每月执行多少次?

函数 / GraphQL

  • 每个用户会话收到多少项请求?

  • 您的应用程序每月有多少活跃用户?

  • 用户平均每月打开多少会话?

Atlas Device Sync 请求

  • 用户每个会话发出多少个写操作?

  • 用户每次会话会收到多少项更新?

  • 您的应用程序有多少设备或活跃用户?

App Services 会计算每次处理非同步应用程序请求所需的总时间和内存。计算以每毫秒运行时的固定价格计费。设定较大请求的价格时,需要使用此价格乘以反映请求所用内存量的系数。

内存乘数从 1 开始(即它不影响计费费率),给定请求每使用 32MB 内存,内存乘数就会增加 1。

价格:10.00 美元 / 500 小时运行时间(约 0.000000005 美元/毫秒)

公式:(请求数)*(运行时间(毫秒))*(内存 (MB)/32 MB)* 0.000000005 美元/毫秒

免费层级阈值: 1 、 000 、 000请求或500小时的计算时间或10 、 000小时的同步运行时(以先到者为准)

例子

估算使用量

请考虑回答以下问题,这有助于估算应用程序每月将使用的计算时间。

运行时

  • 用户每月打开多少个会话?

  • 每个会话收到多少个请求?

  • 每个请求用时多久?

  • 每个请求的作用是什么?

  • 您向 MongoDB Atlas 或其他服务发出了多少项请求?

  • 请求是否会处理繁重的数据处理?

内存使用量

  • 您的应用程序会为每个请求处理多少内存中数据?

  • 一项请求会影响多少个 MongoDB 文档?

App Services 计算客户端应用程序用户与同步服务器具有活动连接的总时间,即使他们当时未传输数据。同步按每个用户每毫秒的同步运行时间以固定费率计费。

价格:0.08 美元 / 1,000,000 分钟运行时间(0.00000008 美元/分钟)

公式:(# 活跃用户数)*(同步时间(分钟/用户))*($0.00000008/分钟)

免费层级阈值: 1 、 000 、 000请求或500小时的计算时间或10 、 000小时的同步运行时(以先到者为准)

设备同步在 30 天未活动后自动暂停。

例子

估算使用量

请考虑回答以下问题,这有助于估算应用程序每月将使用的同步时间。

同步会话

  • 您的应用程序每月有多少活跃用户?

  • 用户平均每月在线的时间是多少?

虽然边缘服务器处于公共预览阶段,但边缘服务器没有单独的计费项目。相反,它使用与 Atlas Device Sync 相同的计费方式,包括免费层级阈值的可用性。有关更多详细信息,请参阅本页上的“Atlas Device Sync”部分。

出于计费目的,请将每个边缘服务器实例视为每月活跃用户,并计算其在线时间以估计每月同步使用量。

当边缘服务器过渡到正式可用性时,定价模型将与 MongoDB Enterprise Advanced 更加相似。如果您对边缘服务器的定价感兴趣,请联系您的销售代表。

App Services 可测量应用程序向客户端应用程序和外部服务发送的数据总量。数据传输按每千兆字节数据输出的固定价格计费。

价格:$0.12/GB

公式:(发送到客户端/服务的数据 (GB))*(0.12 美元/GB)

免费层级阈值: 10GB

注意

MongoDB Atlas 数据传输

从链接的 MongoDB Atlas 数据源到 App Services 的数据传输按 Atlas Data Egress 费用计费。要了解有关 Atlas 出口速率的更多信息,请阅读数据传输计费文档。

例子

估算使用量

请考虑回答以下问题,这有助于估算应用程序每月传输的数据量。

数据传输

  • 平均用户每月发出多少项更新/请求?

  • 每个更新/请求会向用户发送多少数据?

  • 数据发送到外部服务的频率是多少?

  • 每次外部服务调用可能发送多少数据?

群组消息应用程序使用 App Services 管理权限,并在同一群组中的用户之间同步消息。该应用有以下用途:

  • 任何给定月份约有 2,000 个活跃群聊。

  • 群聊平均有 4 个用户,每个用户每月发送约 900 条消息。

  • 消息通常很简短,但可能包含最多 2KB 的数据。

  • 用户每月持续打开应用的时长约为 9 小时。

以下计算可估算运行此应用程序一个月的成本:

使用类型
计算
App Services Requests
  • (2000 个聊天)*(4 个用户/聊天)*(900 条消息/用户)= 7,200,000 条信息

  • (7,200,000 条消息)*((1 个写入 + 3 个读取)/消息)= 28,800,000 个请求

  • (28,800,000 个请求)-(1,000,000 个免费套餐请求)= 27,800,000 个请求

  • (27,800,000 个请求)*(0.000002 美元/请求)= 55.60 美元

  • (2,000 个聊天)*(4 个用户/聊天)*(9 小时/用户)= 72,000 个活跃小时

  • (72,000 个活跃小时)-(2,500 个免费套餐时长)= 69,500 个活跃小时

  • (69,500 活动小时)*(60 分钟/小时)*(0.00000008 美元/分钟)= 0.33 美元

  • (7,200,000 条消息)*(3 次读取/消息)= 21,600,000 次读取

  • (21,600,000 读数)*(0.000002 GB / 读数)= 43.2 GB

  • (43.2 GB)-(10 个免费套餐 GB)= 33.2GB

  • (33.2 GB)*(0.12 美元/GB)= 3.98 美元

合计
55.60 美元(请求)+ 0.33 美元(同步)+ 3.98 美元(数据传输)= 59.91 美元/月

注意

免费套餐使用量

免费套餐使用量影响账单的方式取决于你每月的消费量。在此示例中,我们假设所有请求和活动在一个月内均匀分布。

按一个月 30 天计算,此应用程序平均每天要处理 960,000 次请求,同步用时 2,400 个小时,传输 1.44 GB 的数据。该应用将在每月的第二天达到请求/计算/同步阈值,在第七天达到数据传输阈值。

免费套餐将涵盖每个领域的以下使用情况:

  • App Services Request: 1,000,000 项请求

  • Atlas Device Sync:2,500 个小时

  • 数据传输:10 GB

一家硬件商店使用允许客户在线浏览和订购商品的应用程序。该应用程序使用 Realm 函数根据用户的搜索获取商品、获取特定商品的详细信息并提交订单。该应用程序具有以下用途:

  • 每月约有 100,000 名访问者

  • 某个普通访问者会执行 2 次搜索、查看 10 件商品并且有 20% 提交订单的可能性。

  • 搜索结果、列项数据和订单请求的大小不超过 4KB

以下计算可估算运行此应用程序一个月的成本:

使用类型
计算
  • (2 次搜索 + 10 个项目 + 0.20 份订单)/ 访客 = 12.2 次请求 / 访客

  • (12.2 次请求 / 访客)*(10 万位访客)= 122 万次请求

  • (1,220,000 个请求)-(1,000,000 个免费层级请求)=(220,000 个请求)

  • (220,000 个请求)*(0.000002 美元/请求)= 0.44 美元

  • (100,000 名访客)*((2 次搜索 + 10 个项目 + 0.20 个订单)/访客)= 1,220,000 项请求

  • (122 万次请求)*(100 毫秒 / 请求)* 1 = 122,000,000 毫秒

    • 100 毫秒是轻量级函数保守的运行时间估计

    • 4KB 远低于 32MB,因此内存乘数为 1

  • (122,000,000 毫秒)-(28,152,000 免费套餐毫秒)= 93,848,000 毫秒

  • (93,848,000 毫秒)*(0.000000005 美元/毫秒)= 0.47 美元

  • (1,220,000 次请求)*(0.000002 GB / 请求) = 4.88 GB

  • (4.92 GB) -(10 个免费套餐 GB)= 0 GB

  • (0GB) *(0.12 美元 / GB)= 免费

合计
$0.44(请求)+ $0.47(计算)+ $0(数据传输)= $0.91/月

注意

免费套餐使用量

免费套餐使用量影响账单的方式取决于你每月的消费量。在此示例中,我们假设所有请求和活动在一个月内均匀分布。

在一个月 30 天的每一天中,此应用程序均会处理 41,290 个请求、1.3 个计算小时以及 16.8 GB 的数据传输。该应用会在该月的第 24 天达到请求/计算阈值,并在第 1 天达到数据传输阈值。

免费套餐将涵盖每个领域的以下使用情况:

  • App Services Request: 1,000,000 项请求

  • App Services Compute:7.82 小时

  • 数据传输:10 GB

一家地区性披萨连锁店使用 App Services 处理其所有餐厅的订单。该应用有以下用途:

  • 该连锁店拥有 25 家门店,且每家门店每月会收到约 12,000 个订单

  • 对于每个订单,数据库触发器都会向客户发送一份电子邮件收据。另一个触发器会在收到客户订单、启动配送以及即将送达时向客户发送文本消息更新。

  • 定时触发器每 5 分钟运行一次,以监控交付时间。如果交付用时过长,它会向用户发送短信更新。约 10% 的交付用时过长。

  • 订单大小不一,但不超过 4KB

使用类型
计算
  • (25 家商店)*(12,000 个订单/商店)= 300,000 个订单

  • (300,000 份订单)*((1 封电子邮件 + 3.10 条短信)/ 订单)= 123 万次请求

  • (12 次触发/小时)*(720 个小时/月)= 8,640 个请求

  • (123 万 + 8,640 次请求)-(1 百万次免费套餐请求)= 238,640 次请求

  • (238,640 个请求)*($0.000002 美元/请求)= 0.48 美元

  • (123 万次请求)*(300 毫秒 / 请求)* 1 = 369,000,000 毫秒

    • 300 毫秒是触发函数的估计运行时间。为获取更好的估算值,请创建 POC 函数并对连接到外部服务的用时等内容进行测试。

    • 4KB 远低于 32MB,因此内存乘数为 1

  • (369,000,000 毫秒)-(300,276,000 免费套餐毫秒)= 68,724,000 毫秒

  • (68,724,000 毫秒) * ($0.000000005 / 毫秒) = $0.34

  • (1,230,000 个请求)*(0.000004 GB/请求)= 4.92 GB

  • (4.92 GB) -(10 免费套餐 GB)= 0 GB

  • (0GB) *(0.12 美元 / GB)= 免费

合计
0.48 美元(请求)+ 0.34 美元(计算)+ 0 美元(数据传输)= 0.82 美元/月

注意

免费套餐使用量

免费套餐使用量影响账单的方式取决于你每月的消费量。在此示例中,我们假设所有请求和活动在一个月内均匀分布。

在一个月 30 天的每一天中,此应用程序将处理 41,000 项请求、3.42 个计算小时和 0.164 GB 的数据传输。该应用将在该月 25 号达到请求/计算阈值,并且不会超过数据传输免费套餐阈值。

免费套餐将涵盖每个领域的以下使用情况:

  • App Services Request: 1,000,000 项请求

  • App Services 计算:83.41 小时

  • 数据传输:4.92 GB

← appservices whoami