AWS AppSync 的 GA 版添加了新的 GraphQL 特性

  • Steef-Jan Wiggers
  • 盖磊

2018 年 5 月 15 日

话题:移动AWS语言 & 开发

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

2018 年 4 月,Amazon 发布了AWS AppSync的一般可用版(GA)。AWS AppSync 是一种提供实时数据处理和离线编程能力的 GraphQL 服务,是 Amazon 先前于去年的 AWS re:Inventd 大会上推出的。当前发布的 GA 版中,提供了多种可加速开发的新特性,其中包括一种测试和调试流程、与 Amazon CloudWatch 的集成,以及对 Amazon CloudFormation 的支持。

AWS AppSync 服务由 Amazon 管理,它使用了 API 查询语言GraphQL。GraphQL 还提供了服务器端的运行时,满足对已有数据进行用户定义查询的需求。即便发布请求的设备处于离线状态,客户也可以使用 AppSync 查询实时数据。这时数据缓存在本地,并在连接可用时进行同步。例如,AWS AppSync 的一个用例是文档协同场景,另一个用例是离线新闻阅读。



图片来源:Youtube 视频“AWS 线上技术讲座:使用 AWS AppSync 离线 GraphQL 应用”(https://www.youtube.com/watch?v=MD6GaLT8PnE)的截图

在移动服务方面,AppSync 可通过 AWS Console 访问。这样,开发人员可在 AppSync Console 中创建 API,启动一个空模式或是一个例子模式。之后,开发人员可以:

  • 使用 SDL(图模式定义语言,Graph schema definition language)定义 API 的类型和功能。
  • 添加数据源,例如现有的 DynamoDB 表。AWS AppSync 服务可运行在 DynamoDB 等 AWS 服务之上。
  • 将数据与解析器关联。解析器附于设定模式中某个对象的给定域上。
  • 一旦开发人员部署后,就可以集成 GraphQL API。此后,开发人员可以使用 AWS SDK,或是 Apollo Client、Relay 等工具,将 API 添加到应用中。



图:AWS Console 中的 AWS AppSync 服务

对于开发人员而言,使用 AppSync 中的 GraphQL 特性进行数据发现,优点在于不需要具备任何后端数据源的知识。此外,AppSync 还提供了一种测试和调试工作流特性,支持开发人员模拟 GraphQL 的请求和响应场景。模拟有助于检查应用在多种不同场景中的行为,也可以检查解析器传送和接收信息的情况。最后一点,AppSync 提供对多种平台和框架的支持。

AWS AppSync 服务目前在 US East(弗吉尼亚州北部)、US East(俄亥俄州)、US West(俄勒冈州)、Asia Pacific(悉尼)、Asia Pacific(东京)和 EU(爱尔兰)等区域可用。服务采用按次计费。对于客户的查询和数据更改操作,以及对数据执行的更新操作,服务将会分别提供单独的账单。计费情况详见 AppSync 的价目表

查看英文原文: AWS AppSync Including New GraphQL Features Is Now Generally Available

移动AWS语言 & 开发