勉強前イメージ
アプリケーションのデータをsyncするとか・・?
調査
AppSyncとは?
GraphQLというWebAPIを用いてデータにアクセスでき、処理を行うことができるもの
WebAPI とは?
APIやりとりをHTTP,HTTPSベースで行うAPI
RESTやSOAPなどがあり、そこにGraphQLというものもあります。
GraphQL とは?
acebookが2015年に公開したAPIの規格で、
RESTでは以下のような課題がありました。
- REST API の課題
- ドキュメント管理が大変
- 使い方難しい
- ドキュメントと実装がずれる
RESTでの課題を解決し、RESTが適合しないときに使うものとして開発されました。
改めての AppSyncとは?
GraphQLのマネージドサービス。
GraphQLを簡単に使うことができます。
接続イメージ
PCやmobileからのリクエストをAppSyncはGraphQLで処理します。
スキーマーとデータソースを繋ぐ役割の リゾルバー
データソースは DynamoDB, lambda, Aurora, Elasticsearch, HTTP Endpoint が指定できます。
AppSyncの特徴
- シンプルかつ安全なデータアクセス
GraphQL からの単一のネットワークリクエストで複数のデータソースからデータの取得が行なえます。
- 組み込まれたリアルタイム & オフラインの機能
データの更新をリアルタイムでプッシュでき、
モバイルのアプリケーションのために、オフライン時のアクセスと、オンラインに復帰した際に競合を解決するための機能を備えた、データ同期機能を提供します。
- サーバー管理が不要
完全マネージド型なので、セットアップ、管理、保守は必要ありません。
ユースケース
- ダッシュボード
- リアルタイムでのデータ更新
- 複数ユーザが同時編集するようなもの
- コラボレーションをするもの
- 自動更新ができる
- ソーシャルメディア・チャット
- 複数ユーザ間のメッセージ管理ができる
- オフライン時でも操作可能で、接続後自動sync
勉強後イメージ
APIで自動でデータ取りに行ってくれたりする・・のイメージ
実際に触ってないからまだふんわりとしか理解できてない。