AWS AppSync 概述备忘录
AppSync是什么
-
- AWSが提供するマネージドGraphQL gatewayサービス
Graph QL:サーバー上にあるデータのフェッチ、変更、サブスクライブをクライアントアプリから実行できるデータ言語
以下是主要特点。
フルマネージド GraphQL サービス
リアルタイムデータアクセス/更新
GraphQL サブスクリプションを利用し、クライアント側でどのデータをリアルタイムで更新するか指定できる。
オフラインデータ同期
クライアントはアプリデータをオフラインで利用でき、データの登録/更新できる。
キャッシング
頻繁に変更されないデータをキャッシュして、パフォーマンスを向上させることができる。
複数データソースへのアクセス
AWS Lambda、Amazon DynamoDB、Amazon Elasticsearch がサポートされている。
アクセス制御
IAMロールやCognitoユーザープールと組み合わせたアクセス制御が可能。
概念与架构
AWS App Sync Client
認証、オフラインロジックなどを含んだクライアント
Resolver
リクエスト / レスポンスの処理を記述する関数
マッピングテンプレートによって、GraphQL リクエストをデータソースの命令に変換する⽅法と、データソースからの応答をGraphQLレスポンスに変換する⽅法を定義
Resolver マッピングテンプレートは、VTL (Velocity Template Language)によって記述
Data Source
DynamoDB
Lambda
Aurora Serverless
Elasticsearch
HTTP Endpoint
Schema
サーバ機能を記述し、クエリが 有効かどうかを判断する為に使⽤
GraphQL API は、SDL(Schema Definition Language)によって記述された1つのGraphQL Schema で定義される。
用例
-
- リアルタイムでデータ更新を行うダッシュボードアプリケーション
-
- 複数ユーザーがコンテンツ(ドキュメント、画像、テキストメッセージ等)の共同編集を⾏うアプリケーション
- ソーシャルメディアやチャットなど複数ユーザー間でのメッセージング管理を行うアプリケーション
价格
参考信息
-
- AWS AppSync
- appsyncを使ったServerlessアーキテクチャ