Pub/Sub 价格
Pub/Sub 的费用由三部分组成:
- 发布和传送消息的吞吐量成本
- 与跨 Google Cloud 的吞吐量相关的数据传输费用 可用区或区域边界
- 快照、主题保留的消息和已确认的存储费用 按订阅保留的消息
Pub/Sub 服务费用根据用量( 发布、传递或存储的字节数)。
相比之下,Pub/Sub Lite 的吞吐量和存储费用 预留容量
两种服务的数据传输费用均根据用量而非预留计算 容量。
前提条件
本文档要求您了解 Pub/Sub 或 Pub/Sub 的架构 以及每个产品中包含的常用术语。如需更多信息 请参阅 Pub/Sub 架构。
价格示例
下表比较了 Pub/Sub 的每月费用 在北美地区用于示例加载的 Pub/Sub Lite 系统。这个 示例假设消息存储期为 24 小时,资源利用率为 50% 而 Pub/Sub Lite 支持拉取或推送订阅。其他类型的订阅可能会产生额外费用。
发布吞吐量 (MiBps) | 订阅数量 | 可用区级精简版主题 | 区域级精简版主题 | Pub/Sub |
---|---|---|---|---|
10 | 1 | $169 | 608 美元 | $2,000 |
10 | 2 | $214 | 788 美元 | $3000 |
100 | 1 | $1688 | 6,075 美元 | $19760 |
100 | 2 | $2138 | 7,875 美元 | $29640 |
将 Pub/Sub 的费用与 Pub/Sub Lite,请考虑两者在功能上的差异 产品。如需了解详情,请参阅选择 Pub/Sub 或 Pub/Sub Lite。
Pub/Sub 服务价格
本部分中的价格详情仅适用于 Pub/Sub, Pub/Sub Lite。本部分包含以下主题:
吞吐量费用
吞吐量是指 Pub/Sub 主题或 在一段时间内订阅某个主题的事件。
每个日历月的前 10 GiB 吞吐量被识别为消息 结算账号的“基本运费” SKU 是免费的。之后,价格为 所有 Google Cloud 区域每 TiB$40。但是,如果您使用的是 导入主题或导出订阅,请阅读后续部分。
BigQuery 订阅的吞吐量费用
BigQuery 订阅的费用总计为 每 TiB$50 用于从单个 Pod 读取的 Google Cloud 区域(订阅吞吐量) 订阅和写入 BigQuery 的功能。没有其他 BigQuery 数据注入费用。但需要支付其他类型的 BigQuery 费用,例如存储和数据提取费用。对于 如需了解详情,请参阅 BigQuery 价格。 BigQuery 订阅吞吐量的前 10 GiB 免费。
Cloud Storage 订阅的吞吐量费用
在所有 Google Cloud 中,Cloud Storage 订阅的费用为 每 TiB$50 用于从订阅读取(订阅吞吐量)以及向其中写入数据的区域 Cloud Storage当 Cloud Storage 订阅将文件写入存储桶时 可能需要支付其他类型的额外费用。其中包括 存储、检索和复制。如需了解详情,请参阅 Cloud Storage 价格。前 10 GiB Cloud Storage 订阅吞吐量并非免费。
导入主题的吞吐量费用
在所有 Google Cloud 中,导入主题(适用于 Kinesis Data Streams)的费用为每 TiB$50 用于将外部来源中的数据注入 Pub/Sub(发布吞吐量)的区域。 当导入主题将数据注入 Pub/Sub 主题时,其他特定于来源的类型 可能需要支付额外费用。这些费用包括适用于 Kinesis 的 AWS 出站流量等费用 数据流来源。Cloud Storage 订阅吞吐量的前 10 GiB 需要支付费用。
消息量计算
消息的数据量是以下消息的大小总和 属性:
- 编码的消息正文字符串的字节数
- 每个特性的键和值的大小
- 时间戳(20 个字节)
message_id
字符串的大小- 其他可选字段(例如与抢先体验相关的字段)的大小 以及其他访问受限的 API
每个请求至少评估 1 KB,无论邮件大小如何 。因此,对于小于 1 KB 的消息, 在单个请求中发送多条消息
存储费用
订阅中未确认的消息最长可以免费存储一天。
Pub/Sub 存储服务不是免费的,有四种情况。存储 以下各项的费用为每月每 GiB $0.27:
- 主题配置为保留所有消息。在这种情况下,会对发布到主题的所有消息收取消息存储费用。
- 订阅配置为保留已确认的消息。在此情况下,会对保留的已确认消息收取存储费用。
- 创建了订阅的快照。在此情况下,会对快照的未确认消息收取消息存储费用。
订阅配置为在 时保留未确认的消息 1 天,且订阅积压时间已超过 1 天。在此示例中 对于在发布 1 天后保留的未确认消息,我们会收取相应费用。 请注意,未确认的消息不会产生额外的费用, 已保留。
考虑不设置主题保留功能的主题,以及附加的订阅,将保留期限设置为默认 7 天。 如果订阅者能够在发布后的 1 天内处理消息,则订阅所有者不会 则需支付未确认消息的存储费用。但是,如果订阅者无法在前 24 小时内处理消息,则会对发布后 1 天内保留的未确认消息收取存储费用。
考虑将主题保留期设置为 4 天的主题,以及将保留期设置为 4 天的附加订阅 默认为 7 天。订阅所有者无需为未确认的消息支付存储费用 这些消息已在发布后保留 4 天以内,因为这些消息已由主题保留。如果订阅者 在发布 4 天后无法处理消息,订阅所有者将需要支付 额外 3 天(除非订阅者能够在 7 天之前处理消息)。
保留单个订阅中已确认的消息为订阅所有者提供了最大的灵活性,但通常是最昂贵的存储机制。费用最低的存储机制是主题保留,因为为主题保留的消息可以在附加到该主题的所有订阅中使用,而无需针对每项订阅支付额外费用。如果保留的未确认消息已根据主题保留方式保留,我们不会向订阅所有者收取这些消息的费用。快照也可以是一种经济的选择,因为单个快照可以用于多个订阅。
请注意,如果主题保留设置发生更改,未确认的消息将产生费用 可能也会发生变化例如,订阅所有者可能会开始产生存储费用 针对未确认的消息(如果主题所有者停用消息保留功能)。
数据传输费用
Google Cloud 区域之间的互联网数据传输和消息传送费用 与 VPC 网络费率,但有以下例外情况:
- Pub/Sub 不收取区域数据传输费用。
- 发往 Google 产品的出站流量不能免除数据传输费用。
- 您无需为将数据传输到 Pub/Sub 付费。 例如,如果发布商位于不同的区域或可用区 您必须为源服务支付数据传输费用 数据传输费用为必填项。同样,如果发布商是从 Amazon 或私有数据中心,那么您不必 向 Pub/Sub 支付数据传输费用。
每当消息跨越区域边界时,您就需要支付数据传输费用。如果您 有多位订阅者所在的区域不同于 存储消息,则您需要单独为传送支付数据传输费用 每个订阅者
由于消息存储政策导致的数据传输费用
消息存储政策 如果政策强制数据转移区域,则可能会产生额外的区域数据传输费用 退出 Google Cloud 区域。例如,假设一条消息包含以下事件:
- 发布于 A 区域中
- 路由到 B 区域中加以存储
- 传送到 C 区域中的订阅者客户端
在这种情况下,结算场景如下所述:
- 包含主题的项目需支付从 区域 A 到区域 B。
- 包含订阅的项目需支付 区域 B 到区域 C。
仅当满足以下条件时,包含主题的项目才需要支付数据传输费用 发布的消息的存储区域不同于 消息已发布(即 B 区域与 A 区域实际上是两个不同的区域)。 仅当出现以下情况时,包含订阅的项目才需要支付数据传输费用 发布的消息存储在与订阅者不同的区域 (C 不同于 B)。
过滤出的短信费用
Pub/Sub 会自动确认与 filter,但仍需为这些消息支付吞吐量费用。没有数据转移费用 (针对已过滤的邮件)。
Pub/Sub 服务自动确认的消息中至少有 1000 字节不需要付费。消息传送费用取决于 这些消息包含的字节数,且与消息的小型无关。
跨项目 Pub/Sub 结算
如果您在多个项目中使用 Pub/Sub,Pub/Sub 的费用会计入包含所请求资源的项目中:
- 发布费用计入包含主题的项目中。
- 订阅费用计入包含订阅的项目中。
例如,如果订阅在项目 A 中,则会对项目 A 收取从订阅中拉取数据的相关费用,即使该订阅关联的主题属于项目 B 也是如此。
如果项目 A 中的授权服务账号使用了项目 B 中某个订阅的消息,则会对项目 B 收取从订阅中拉取数据的相关费用。
Pub/Sub Lite 服务价格
以下价格详情仅适用于 Pub/Sub Lite, Pub/Sub。除非另有说明,否则详细说明均适用于 可用区级和区域级精简版主题。其中包含以下部分:
吞吐量费用
吞吐量是指 Pub/Sub Lite 主题或 在一段时间内订阅某个主题的事件。
Pub/Sub Lite 吞吐量费用按 而不是实际吞吐量 (MiBps) 或 结算周期内的总字节数(每月 MiB)。吞吐量容量 以容量单位为单位配置和定价。您可以预配吞吐量 同一区域中的一个或多个主题的容量。
下表显示了 Pub/Sub Lite 系统的吞吐量和存储费用。
精简版预留的吞吐量
精简版预留是一种在各节点之间预留和共享吞吐量容量的方法, 一个或多个主题区域级预留需要精简版预留 Pub/Sub 精简版主题。
精简版预留的吞吐量容量以容量单位来衡量。您可以 只为预留预配整数容量的容量单元吞吐量 不同的操作需要不同数量的容量单位, 如下表所示:
必须指定容量单位 | 可用区级精简版主题 | 区域级精简版主题 |
---|---|---|
1 MiBps 的发布吞吐量 | 1 个容量单位 | 4 个容量单位 |
1 MiBps 的订阅吞吐量 | 0.5 个容量单位 | 2 个容量单位 |
一个预留中所有精简版主题的分区数不得超过预留的容量单元数。
计算具有预留的单个主题的吞吐量容量费用
以下部分可帮助您计算 使用预留的单个可用区级精简版主题:
- 主题类型 = 可用区级精简版主题
- 主题数量 = 1
- 分区数 = 5
- 发布吞吐量峰值 = 5 MiBps
- 发布吞吐量所需的容量单位 = 5
- 峰值订阅吞吐量 = 10 MiBps
- 订阅吞吐量所需的容量单位 = 5
- 所需的总容量单位 = 5+5 = 10
- 北美地区 10 个容量单位的每月费用 = $45
若要让具有 5 个分区的区域级精简版主题获得相同的吞吐量,您需要 预留具有 40 个容量单元,发布吞吐量为 20 个, 订阅吞吐量
您可以随时更改预留中的容量单元数。 不过,您需要为过去 24 小时内预配的最大容量付费。 。例如,如果将预留的容量从 40 更改为 10 在星期一上午 10:00 存储每个容量单位的费用
请注意,预留的容量可用于发布和 与预留位于同一区域中的任何主题的订阅吞吐量。接收者 如需详细了解预留,请参阅创建和管理精简版预留。
无精简版预留的吞吐量
本部分仅适用于可用区级精简版主题。
您可以选择不使用预留,而是为单个主题预留发布和订阅吞吐量容量。在这种情况下,您需要为 当前预留的容量,而非运行时间(24 小时)内的最大值 窗口。
请注意,未预留配置的容量必须介于以下限制之间:
- 为每个分区发布 4 MiB 到 16 MiBps(相当于 4 和 16 容量单元)。
- 为每个分区订阅 4 MiB 到 32 MiBps(相当于 2 和 16 容量单元)。
计算单个主题的吞吐量容量费用(无需预留)
以下部分可帮助您计算 单个不使用预留的可用区级精简版主题:
- 主题类型 = 可用区级精简版主题
- 主题数量 = 1
- 分区数 = 4
- 发布吞吐量峰值 = 16 MiBps
- 发布吞吐量所需的容量单位 = 16
- 峰值订阅吞吐量 = 16 MiBps
- 订阅吞吐量所需的容量单位 = 8
- 所需的总容量单位 = 16+8 = 24
- 北美 24 个容量单位的每月费用 = $108
存储费用
与精简版吞吐量一样,您需要为主题的存储容量付费。 Pub/Sub Lite 根据您在 Google Cloud 上 配置。每个分区必须至少有 30 GiB 的存储空间 容量。
区域级精简版主题将数据存储在一个区域的两个可用区中,而 可用区级 LLite 主题仅将数据存储在一个区域内的一个可用区中。 区域级精简版主题会使用 2 个字节的存储空间来存储消息的每个字节 发布。因此,发布到 区域级精简版主题的费用是可用区级服务的两倍 一个。
如需估算 Pub/Sub Lite 系统的存储空间容量,请参阅 以下列表:
确定存储消息所需的时间。
如需估算所需的总存储空间,请将预期平均存储空间乘以 每个分区的吞吐量以及存储 消息。例如,要在 10 条消息中每秒发布 40 MiB 的消息, 可用区级精简版主题中的分区,并将消息保留一天,预配 3375 GiB 存储空间(相当于 40 MiBps * 每小时 3600 秒 *) 每天 24 小时 * 1 GiB/1024 MiB)。存储费用 北美(相当于 3375 GiB * 每天 24 小时*) 每月 30 天 * $0.04 / GiB-month-zone)。对于区域级精简版主题 由于数据存储在两个可用区中,因此存储费用翻了一番,达到 270 美元。
考虑不均匀的密钥分布。
系统会为所有分区分配相同的存储空间 容量。如果您希望某些分区的卷大于其他分区, 预配所有分区,以具有最大分区所需的存储空间。
消息量计算
在计算消息的吞吐量和存储大小时,每条消息 最少使用 256 个字节。如果消息超过 256 个字节,则 消息大小是以下消息属性的总和:
- 编码的消息正文字符串的字节数
- 每个特性的键和值的字节数
- 排序键的字节数
- 事件时间戳(12 个字节)
数据传输费用
仅当您的订阅者处于 与主题位置不同的可用区或区域。互联网费用 Google Cloud 区域之间的数据传出和消息传送与 VPC 网络费率,具体如下 异常:
对于订阅者与其位于同一区域的区域级精简版主题: 且无需支付区域数据传输费用
向 Google 产品传输数据不能免除数据传输费用。
使用非美元货币付费
如果您使用非美元货币付费,请参阅 Google Cloud SKU 上以您的币种列出的价格。其中列出的是每 TiB(2^40 字节,约为 1.1 万亿字节)数据的价格。