Apollo
https://gyazo.com/ec48fbc63d94dff46de344e4807728a0
Apollo GraphQL | Learn about the Apollo platform: Client, Engine, GraphQL servers, GraphQL support, and more.
GraphQLのツールセット
学ぶ
Apollo Odyssey
提供するモジュール
オープンソースのもの
Apollo server
GraphQL server
Schemaと、schemaの各パートを実装したresolverの集合を定義する
Apollo client
Appのデータとステートを管理する
UIコンポーネントの一部としてQueryを定義することで宣言的にプログラミングできる
クエリの結果の詳細をUIにbindingしたり、一貫性やcachingを管理したりする
GraphQLのクライアントライブラリを使うのはキャッシュのため
状態管理を、Client中のGraphQL schemaを追加の構造で拡張する形で行う
view layer(Reactとか)にintegrationできる
Apollo CLI
Apolloが提供するクラウドサービスへのインタフェース
クラウドサービス
Schema registory
GraphQLスキーマのレジストリ
Client registory
スキーマの利用者のレジストリ
Operation registory
スキーマに対する操作のレジストリ
Trace warehouse
どのようなクエリが誰から発行されたのか分析できるやつ
有償プラグイン
GraphQL gateway & query execution engine
Apollo serverの設定と、GraphQL gatewayとして機能する追加のプラグイン
Gateway:分割されてデプロイされたお互いに参照するmicro schemaを単一のmaster schemaとして構成する
master schemaはclientからみると単なるSchemaに見える
クエリを送られると、実行計画をたてて上層のGraphQLサービスからデータをfetchするして単一の結果にまとめて返す
Apollo Client, now with React Hooks - Apollo GraphQL
hooks (React)に対応した
Apollo
Apollo Client は煩雑な State 管理をシンプルにすることを目的に作られています
Subscriptions | Apollo Client
リアルタイムにdataをpushするやつ
eggheadのvideo tutorial
https://egghead.io/courses/graphql-data-in-react-with-apollo-client