Background

Amazon Introduces 'AppSync', Allowing Apps On AWS To Work While Offline

With AWS, Amazon is one of the dominant cloud provider. And to improve its dominance and user experience, it's introducing AppSync.

Connectivity has become more important, especially when people are glued to their screens. "It is almost impossible to do without our mobile devices and the applications that help make our lives easier," said Tara Walker, a Technical Evangelist for AWS.

As people's dependency on connectivity continues, when there is no connection, hell breaks loose (or peace happens, literally).

This is what AppSync is for. Running on AWS, it allows applications that are hosted on the service, to work even if they're offline.

To make this happen, AWS AppSync that is fully-managed uses serverless GraphQL service. It uses server-side runtime that allows real-time data retrieval, as well as dynamic query execution. GraphQL works at the application layer and provides a type system for defining schemas.

This is also made possible by caching data locally and synchronizing them when connections become available.

According to Tara Walker:

"After a schema definition is established, an AWS AppSync client can be configured with an operation request, like a Query operation. The client submits the operation request to GraphQL Proxy along with an identity context and credentials."

"The GraphQL Proxy passes this request to the Resolver which maps and executes the request payload against pre-configured AWS data services like an Amazon DynamaoDB table, an AWS Lambda function, or a search capability using Amazon Elasticsearch. The Resolver executes calls to one or all of these services within a single network call minimizing CPU cycles and bandwidth needs and returns the response to the client."

"Additionally, the client application can change data requirements in code on demand and the AppSync GraphQL API will dynamically map requests for data accordingly, allowing prototyping and faster development."

Initially, AWS AppSync is available in Public Preview, supporting development for iOS, Android, and JavaScript applications.

Published: 
29/11/2017