本文档介绍了如何迁移 Pub/Sub Lite 从 Pub/Sub Lite 迁移到 Pub/Sub。
迁移步骤 发布到 Pub/Sub,请使用 Pub/Sub Lite 导出 订阅功能。导出订阅 功能将 Pub/Sub Lite 中的消息转换为 Pub/Sub 消息, 使用一种称为导出订阅的订阅类型。
Pub/Sub Lite 与 Pub/Sub 之间的区别
Pub/Sub 和 Pub/Sub Lite 都是可横向扩容的消息传递服务,但两者的运作方式存在一些关键差异。如需详细了解这些差异,请参阅选择 Pub/Sub 或 Pub/Sub Lite。
以下部分概述了每项服务之间的一些主要区别 。其中包括 注意事项:
- 数据存放区域和复制
- 分发模式
- 并行处理和排序
- 重放和完全清除
- 容量管理和价格
数据本地性和复制
Pub/Sub Lite。区域级 Pub/Sub 精简版主题复制 复制到同一区域内的次要可用区可用区级 Pub/Sub 精简版 主题将数据存储在单个可用区中,而无需复制。
Pub/Sub。Pub/Sub 跨三个可用区复制数据 单个区域内
关键迁移点
您有必要了解每项服务复制数据的方式不同。
使用 Pub/Sub 时,您可以确保自己的数据存储在 使用 Pub/Sub消息存储服务对区域进行区域处理 政策。
Pub/Sub 不提供对消息存储的具体区域的控制。它始终跨三个可用区复制数据 存储在消息存储政策所指示的区域内
如果您未指定消息存储政策,Pub/Sub 会自动 根据资源位置确定消息的存储位置 限制组织 政策。如果 则 Pub/Sub 会允许所有 并自动选择一个区域来存储消息。
分发模式
Pub/Sub Lite。对于消息传送,仅限 Pub/Sub Lite 支持 StreamingPull RPC API。
Pub/Sub。对于消息传送,Pub/Sub 提供了多种消息传送选项,包括 StreamingPull 消息传送。
关键迁移点
如果您想在 Pub/Sub 中复制 Pub/Sub Lite 行为( 低延迟和高效率),使用 StreamingPull API。作为替代方案,您可以将 Pub/Sub 使用推送 送货。
并行处理和排序
Pub/Sub Lite。Pub/Sub Lite 支持 。
Pub/Sub。Pub/Sub 支持每条消息的并行处理。
关键迁移时间点
Pub/Sub 不是基于分区的解决方案。Pub/Sub 消息 同时处理,这意味着无法保证消息顺序。如果 应用需要消息排序,请使用 Pub/Sub 排序 密钥。
在 Pub/Sub Lite 中使用导出订阅时, Pub/Sub 精简版键用作 Pub/Sub 中的排序键 消息。这样可确保邮件能继续按顺序递送。
为了确保与 Pub/Sub 消息兼容,请验证您的 Pub/Sub 精简版密钥仅包含 UTF-8 编码字符。
- Pub/Sub 精简版密钥以字节形式存储。
- Pub/Sub 排序键存储为字符串。
Pub/Sub 排序键的发布者吞吐量上限为 1 MBps。 Pub/Sub 中的消息排序只能在单个区域内进行。 如需在 Pub/Sub 中接收有序消息,您必须在订阅设置中明确启用消息排序。
重放和完全清除
Pub/Sub Lite。Pub/Sub Lite 支持seek 而无需额外配置。
Pub/Sub。Pub/Sub 支持跳转功能,但需要 进行额外配置
关键迁移点
要启用跳转功能,Pub/Sub 要求您明确配置 主题和订阅的相关设置。
- 主题:您必须配置消息保留时长
- 订阅:您必须配置已确认消息保留。
如果您需要与 Pub/Sub Lite,或者您的迁移需要重放消息或完全清除消息,请选择此选项。 无论您的具体要求如何,都可以查找和重新处理 是分阶段迁移的重要保护措施。它支持回滚 在出现意外问题时最大限度地减少数据丢失。
容量管理和价格
Pub/Sub Lite。Pub/Sub Lite 容量是手动设置的, 通过使用 Pub/Sub Lite 配置存储空间和吞吐量容量进行预配 预留。
Pub/Sub。Pub/Sub 是一项全代管式服务,可自动扩缩。
关键迁移时间点
过渡到 Pub/Sub 后,您可以通过以下方式管理容量和价格: 设置配额替换值或申请更改 Pub/Sub 配额 资源。
管理 Pub/Sub 容量的主要原因是遵守严格的 费用要求。如果您没有严格的费用限制,Pub/Sub 高效管理资源,而无需过多干预。Pub/Sub 根据用量计费。有关详情,请参阅 Pub/Sub 价格。
计划迁移
要从 Pub/Sub Lite 迁移到 Pub/Sub,您可以使用 Pub/Sub Lite 导出订阅功能。借助导出订阅功能 分阶段迁移 Pub/Sub Lite 应用。通过采用分阶段方法 您可以迭代更新、测试和监控迁移,从而最大限度地降低 错误和停机时间。
准备工作
- 评估现有的 Pub/Sub Lite 应用并规划 所需的 Cloud Pub/Sub 功能。
- 确保 Pub/Sub 满足您的所有功能和业务 要求。
分阶段迁移工作流
以下步骤概述了导出订阅迁移工作流。
- 创建相关的 Pub/Sub 主题和订阅 与主题相关。
- 创建 Pub/Sub Lite 导出订阅。
- 同时订阅 Pub/Sub 和 Pub/Sub Lite 订阅。
- 逐步更新发布者以接收消息 Pub/Sub 主题,而不是 Pub/Sub Lite 主题。
- 验证迁移后的工作负载是否按预期工作。
- 关停 Pub/Sub 精简版发布商和订阅者。
迁移阶段
以下部分详细介绍了分阶段迁移工作流中的每个步骤。
创建 Pub/Sub 主题和订阅
创建相应的 Pub/Sub 主题及其订阅。 在此阶段,您需要配置所需的主题和订阅 设置,例如消息保留、消息确认和消息存储 政策。
如果需要,建立和设置配额,以防止过度使用和意外情况 结算。最重要的是,我们强烈建议您设置死信 Pub/Sub 精简版主题,用于捕获所有迁移失败的消息 成功上传到 Pub/Sub这样你就能对错误进行排查 确定导出失败的根本原因,并向 正确主题,确保数据不会丢失。
创建 Pub/Sub Lite 导出订阅
为每个主题创建要导出的 Pub/Sub Lite 导出订阅 从 Pub/Sub Lite 主题转发到其对应的 Pub/Sub 主题。 无需为每个导出单独设置吞吐量容量 订阅,请使用 Pub/Sub Lite 预留来高效管理您所有 统一导出订阅。到此阶段结束时,您的 Pub/Sub Lite 和 Pub/Sub 从导出订阅生效的那一刻起,两个主题都会收到相同的消息 创建。
然后,您可以使用 Pub/Sub 主题 分阶段开发和测试订阅者客户端。这种方法 最大限度地减少对现有 Pub/Sub Lite 应用的中断。
双订阅 Pub/Sub Lite 和 Pub/Sub 主题
在开发环境中,更新订阅者客户端以读取消息 使用适当的 Pub/Sub 主题, 客户端库。与 Pub/Sub Lite 不同,Pub/Sub 提供多种服务。与 Pub/Sub Lite 不同,Pub/Sub 提供多种 发送模式(拉取和推),请选择 应用的要求
要模拟与 Pub/Sub Lite 相同的行为,请配置您的 使用 StreamingPull API 的 Pub/Sub 实例。
在具有多个使用方应用的系统中,逐步迁移各个使用方应用 对您的应用进行监控。对于每个订阅程序应用,运行 Pub/Sub Lite 订阅者和 以便验证新模型的行为和性能, 订阅者。密切监控两个订阅者,以确保消息传送 一致性、错误处理和整体功能。在所有订阅者之后 已成功迁移和验证,则停用旧版 Pub/Sub Lite 订阅者客户端。
更新发布商
当所有订阅者成功接收来自 Pub/Sub,您可以逐步更新发布商 将消息直接发送到 Pub/Sub 主题。为此,请更新您的发布商 使用 Pub/Sub 客户端库。这可确保您可以 将流量从 Pub/Sub Lite 逐步转移到 Pub/Sub。
停用 Pub/Sub Lite
在成功将所有订阅者和发布商迁移到 Pub/Sub,您可以关停 Pub/Sub Lite 资源。这个 可帮助您避免为未使用的基础架构产生不必要的费用。