GraphQL 和 Amazon AppSync 架构 - Amazon AppSync
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

GraphQL 和 Amazon AppSync 架构

注意

本指南假设用户具有 REST 架构风格的实际经验。我们建议在使用 GraphQL 和 Amazon AppSync 之前查看该指南和其他前端主题。

GraphQL 是一种 API 查询和处理语言。GraphQL 提供了灵活直观的语法以描述数据要求和交互。它使开发人员能够准确询问所需的内容并获得可预测的结果。它还可以在单个请求中访问多个源,以减少网络调用次数和带宽要求,从而节省电池使用寿命和应用程序使用的 CPU 周期。

通过变更使数据更新变得更简单,以使开发人员能够描述数据应如何发生变化。GraphQL 还有助于通过订阅快速设置实时解决方案。所有这些功能相结合再加上强大的开发人员工具,使 GraphQL 在管理应用程序数据方面变得不可或缺。

GraphQL 是 REST 的替代方案。RESTful 架构是目前比较流行的客户端-服务器通信解决方案之一。它以通过 URL 公开资源(数据)的概念为中心。可以使用这些 URL 通过 CRUD(创建、读取、更新、删除)操作访问和处理数据,这些操作采用 HTTP 方法的形式,例如 GETPOSTDELETE。REST 的优点是学习和实施相对简单。您可以快速设置 RESTful API 以调用多种服务。

不过,技术正变得越来越复杂。随着应用程序、工具和服务开始扩展到全球受众,对快速且可扩展的架构的需求变得至关重要。REST 在处理可扩展的操作时存在很多缺点。有关示例,请参阅该使用案例

在以下几节中,我们将介绍一些有关 RESTful API 的概念。然后,我们介绍 GraphQL 及其工作方式。

有关 GraphQL 以及迁移到 Amazon 的好处的更多信息,请参阅 Decision guide to GraphQL implementations