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

Amazon Web Services App Sync 迁移指南

在此页面上

  • 什么是Amazon Web Services AppSync?
  • 系统架构
  • 设备同步
  • Amazon Web Services AppServices
  • 迁移步骤
  • MongoDB Atlas
  • AWS
  • 应用程序代码

从 9 月2024 起,设备服务已被弃用。您可以使用许多第三方服务来迁移App Services App。本页提供使用Amazon Web Services AppSync 的指导。

AWS AppSync 是一个无服务器平台,可用于通过GraphQL和 Pub/Sub API 在设备之间保持数据同步。与作为后端数据存储的MongoDB Atlas结合使用,您可以保留Device Sync的许多优点。

下图显示了典型的Device Sync架构:

显示典型Device Sync架构的图表。

在此架构中,您的应用使用Atlas Device Sync API 直接与Atlas App Services通信,后者负责处理数据存储、同步和冲突解决。

数据流为:

  • 数据存储在每个设备的本地域数据库中。

  • 用户在设备上进行更改。

  • Device Sync API 将更改发送到Atlas App Services。

  • Atlas App Services执行任何必要的冲突解决,将更改存储在Atlas中,并将更改同步到其他设备。

  • Device Sync API更新每台设备的本地域中的数据。

当您从Device Sync迁移到Amazon Web Services AppSync 时,您需要对架构进行以下更改:

  • 使用Amazon Web Services AppSync处理数据同步

  • 使用Amazon Web Services Lambda解析程序通过MongoDB驾驶员SDK 向Atlas发送数据

  • 使用Amazon Web Services Event Bridge 侦听来自Atlas的事件触发器

  • 向Atlas添加数据库触发

您还需要在客户端代码中更改以下内容:

  • 由于 AppSync 使用GraphQL,因此您需要使用Amazon Web Services AppSync API 从应用应用程序访问权限GraphQL端点。

  • 将本地数据存储从Realm数据库更改为设备上的默认数据存储(通常是 SQLite),或您选择的其他数据存储。

下图是新架构的典型示例:

显示典型Device Sync架构的图表。

以下部分概述了将现有Device Sync架构迁移到Amazon Web Services AppSync 所需执行的高级任务。

  • 如果需要,更新数据库安全和网络访问权限。

  • 创建一个数据库触发,只要数据库或集合中的数据发生更改,该触发器就会触发事件。

  • 将Atlas配置为合作源。

  • 将Amazon Web Services AppSync 配置为目标。

  • 创建事件正文字段到 AppSync 的GraphQL端点的映射

  • 配置安全性

  • 根据MongoDB-DataAPI 模板创建Lambda解析程序。有关此进程的详细信息,请参阅MongoDB- API GitHub 存储库中的自述文件。

  • 通过 IAM 配置Lambda授权

  • 配置 IAM 权限

  • 使用Lambda授权链接到Lambda解析程序。

  • 为您的数据创建GraphQL模式。

迁移后端架构后,您需要对客户端应用进行一些更改:

  • 将Realm SDK 替换为调用 AppSync GraphQL端点的代码。 您可以将现有平台与相应的Amazon Web Services SDK 结合使用,也可以使用Amazon Web Services Amplify,后者为连接到Amazon Web Services服务提供原生支持。

  • 添加驱动程序以写入和读取设备的数据存储。 在iOS和 Android 环境中,默认数据存储均为 SQLite,但请使用能满足您需求的数据库。

后退

Device Sync弃用