发布于: Nov 15, 2019

AWS AppSync 是一款托管的 GraphQL 服务,使您可以创建一个灵活的 API 来安全地访问、操作和组合来自一个或多个数据源的数据,从而简化应用程序开发。借助 AppSync 可以轻松将任何支持的数据源实时化,并自动处理客户端和服务之间的连接管理。我们今天将发布的 AppSync 增强功能提供新的协议选项,支持指标和更大型的负载,将进一步优化对需要实时更新的应用程序的访问,例如游戏排行榜、社交媒体应用程序、体育比赛得分、直播流式处理、互动聊天室、物联网控制面板等等。

除基于 WebSocket 的 MQTT 外,应用程序现在还可以将纯 WebSocket 作为一个新的协议选项,用来与连接的客户端实时通信。此新协议支持更高的最大负载大小(从 128kb 增加到 240kb),增强了连接和广播速率、CloudWatch 指标以及适用于 GraphQL 订阅的选择集筛选。从现在开始,新的和现有的 AppSync API 都已支持纯 WebSocket 协议。虽然基于 WebSocket 的 MQTT 也同样可用,未来我们推荐使用新协议,并且将支持新的功能。此新协议与适用于 iOS、Android 和 JavaScript(Web 和 React Native)的智能库结合,可以满足客户端连接、可扩展性、扇出和广播等方面的要求。这有利于开发人员专注于实时应用程序的业务优势领域,无需关心 WebSocket 操作和基础设施管理。

要利用所有这些新的功能,客户端需要升级到今天推出的最新版适用于 JavaScript、iOS(版本 3.0.2+)的 AppSync 开发工具包和 Amplify 客户端(版本 2.1.0+),适用于 Android 的 AppSync 开发工具包将于下周推出。新客户端版本将默认使用纯 WebSocket 协议自动连接。现有客户端不受影响,将与以前一样,继续通过基于 WebSocket 的 MQTT 来使用 GraphQL 订阅。现有客户端和新客户端都将能够使用 GraphQL 订阅发送和接收数据,并在同一 API 中相互通信,不受协议影响;从开发人员的角度无需执行任何操作,也无需进行任何代码更改,因为现有客户端不受影响。

有关新增实时功能的更多详细信息,请参阅我们的博客文章AppSync 文档。