iCARE Developer Meetup #6 〜Rails+GraphQL 編〜
だんだんと寒さが薄れてきて春のおとずれが感じられる今日このごろいかがお過ごしでしょうか?どうも青木です。
今回は先日開催されました「iCARE Developer Meetup #6 〜Rails+GraphQL 編〜」の様子をレポートしたいとおもいます。
iCAREで提供している健康管理システム「Carely」は2019年の春頃に GraphQL(graphql-ruby)の導入を行いました。 そこでRailsではどのようにGraphQLと組み合わせるのかCarely ではどのように導入を決めたのかそして実際にどのように利用しているのか?を中心に発表いたしました。
話は少しずれますが、インフルエンザ関係の報道が目立っております。ご来社頂きました方のために「アルコール除菌+咳エチケット」へのご協力をお願いし食事に関しても個別包装のものを用意させていただき開催しました。
また、ご来社いただけない方ようにもオンラインで参加できるよう急遽ウェブでの配信をおこないました!
Rails開発者向けGraphQL入門 (とし:エンジニア)
まずはエンジニアのとしさん、GraphQLのメリットをご紹介頂きました!
まとめ
- エンドポイントが一つ(/graphql)になるので、Webサーバーにエンドポイントをどう作るかについて悩む必要がなくなる
- データ定義を資産として再利用できる(RESTの場合のjbuilderだと再利用できない)
- リクエスト側から入れ子構造でデータを問い合わせることができるため、1回のリクエストで複雑な構造のデータを柔軟に取得することができる。(ので、サーバー側に、たくさんエンドポイントを用意する必要がなくなる)
- GraphiQL(ブラウザインターフェース)でスキーマ(どんなフィールドがあるか)の確認および動作確認ができる
CarelyへのGraphQLの導入背景と経緯 (いっせい:エンジニア)
次にいっせーさんから導入の経緯と対策に関して!
まとめ
導入の経緯
「開発体制の変化/充実」と「技術課題の解決の可能性」からGraphQLを採用
つまづいたところ
- エラーハンドリング
- N+1クエリ
- ファイルアップロード
CarelyのGraphQL実装と構成 (すん:エンジニア)
最後にすんさんから弊社サービスの「Carely」を実例に実装方法と構成をご紹介!
懇親会も含め、ご参加いただきました皆様から積極的に質問をいただきまして非常に盛り上がったMeetUpになったとおもいます。この場をかりてお礼を申し上げます!