AWS AppSync

使用来自一个或多个数据源的适当数据在全球范围内为您的应用程序提供支持

AWS AppSync 使您可以创建一个灵活的 API 来安全地访问、操作和组合来自一个或多个数据源的数据,从而简化应用程序开发。AppSync 是一项使用 GraphQL 的托管服务,可让应用程序轻松获得所需数据。

借助 AppSync,您可以在一系列数据源(如 NoSQL 数据存储、关系数据库、HTTP API 以及使用 AWS Lambda 的自定义数据源)上构建可扩展的应用程序,包括那些需要实时更新的应用程序。对于移动和 Web 应用程序,AppSync 还可在设备离线时提供本地数据访问,并在它们重新上线后提供带自定义冲突解决方案的数据同步功能。

AWS AppSync 目前已正式发布。如果您想尝试构建数据驱动型移动和 Web 应用程序,请观看 re:Invent 大会视频了解更多信息,然后打开 AWS AppSync 控制台开始构建。有关定价信息,请参阅定价页面。AWS AppSync 目前已在多个区域提供。有关区域可用性的详细信息,请参阅区域详情页面。 

AWS re:Invent 2019:使用 AWS AppSync 放大完整堆栈的无服务器应用程序 (51:46)

优势

轻松启动;随您的业务而扩展

从您选择的 IDE(如 Xcode、Android Studio、VS Code)中在数分钟内直接启动,利用直观的 AWS AppSync 管理控制台或使用 AWS Amplify CLI 自动生成您的 API 和客户端代码。AWS AppSync 与 Amazon DynamoDB、Amazon Aurora、Amazon Elasticsearch、AWS Lambda 和其他 AWS 服务进行了集成,使您可以基于几乎无限的吞吐量和存储量(根据业务需求进行扩展)创建复杂的应用程序。 

实时订阅和离线使用

AWS AppSync 实现了数百万种设备的实时订阅,还实现了应用程序数据的离线使用。离线设备再次连接时,AWS AppSync 仅自动同步设备掉线时所发生的更新,并非整个数据集。AWS AppSync 提供用户可定制的服务器端冲突检测和解决方案,替您分担管理数据冲突的沉重负担。 

统一和保护您的分布式数据

使用 GraphQL 通过一次网络调用在多个数据源间执行复杂的查询和聚合。利用 AWS AppSync,您可以使用多个并发的身份验证模式并允许直接从 GraphQL 架构在数据定义级别定义安全性和精细访问控制来保护您的应用程序数据。 

工作原理

AppSync 的工作原理

使用 AWS AppSync 的客户

使用案例

实时协作

数据广播

通过从后端向所有连接的客户端(一对多)广播数据,或者在各客户端自身(多对多)之间广播数据,您可以使用 AWS AppSync 启用可扩展的实时协作使用案例。例如,您可以构建第二屏幕场景,其中向所有客户端广播相同的数据,然后,用户通过投票和评价屏幕内容做出实时响应。

参考架构示例代码

数据广播

聊天应用程序

您可以使用 AWS AppSync 为协作和会话应用程序提供支持。例如,您可以构建支持多个私人聊天室的移动和 Web 应用程序,提供对话历史记录的访问,并将出站消息排入队列,即使设备处于脱机状态也可以实现以上功能。

参考架构示例代码

聊天应用程序

物联网

您可以使用 AWS AppSync 访问发送到 AWS IoT 的物联网设备数据。例如,您可以在移动或 Web 应用程序中构建实时控制面板,可视化来自联网汽车的遥测。

参考架构:示例代码

物联网

数据层

微服务访问层

您可以将 AWS AppSync 用作单个界面来访问,并且组合应用程序中多个微服务的数据,即使它们在不同的环境中运行,例如 VPC 中、Amazon API Gateway 上的 REST API 后面,或另一个 AWS AppSync 终端节点上的 GraphQL API 后面的容器。

参考架构示例代码 1 示例代码 2

微服务访问层

多语言后端数据访问

您可以通过一次调用,检索或修改多数据源(Amazon Aurora Serverless 中的 SQL 数据库、Amazon DynamoDB 中的 NoSQL 表、Amazon Elasticsearch Service 中的搜索数据、Amazon API Gateway 中的 REST 终端节点或 AWS Lambda 中的无服务器后端)中的数据。使用 GraphQL 连接,查询和创建数据源之间的关系。为 Web 和移动客户端提供实时和离线功能。 

多语言后端数据访问

离线

离线 Delta Sync

您可以将 AppSync 与设备上的持久性存储引擎 Amplify DataStore 结合使用,后者通过采用本地优先的熟悉编程模式的 GraphQL、利用 AWS AppSync(通过使用自己的 Lambda 函数进行的自动合并、开放式并发或自定义解析等高级冲突检测和解决策略)对数据版本控制的内置支持来在移动/Web 应用程序和云之间自动同步数据。

参考架构:示例代码

离线 Delta Sync

详细了解 AWS AppSync 的功能

访问功能页面
准备好开始构建了?
打开 AWS AppSync 控制台
还有更多问题?
联系我们