Slide 1

Slide 1 text

Pocket MusubiでのAppSyncの使い所 2023/07/06 株式会社カケハシ 種岡 tsukiji.graphql #1

Slide 2

Slide 2 text

自己紹介 ・カケハシ入社 3年目 ・Pocket Musubiを開発するチームに所属 ・バックエンドを主軸にインフラやフロントエンドも従事 ・2人の娘の育児に奮闘中 Copyright © KAKEHASHI Inc. All Rights Reserved. 
 2

Slide 3

Slide 3 text

アジェンダ Copyright © KAKEHASHI Inc. All Rights Reserved. 
 3 Pocket MusubiではGraphQLサーバーとしてAppSyncを採用 AppSyncの開発周りの知見を共有

Slide 4

Slide 4 text

おくすり連絡帳について Copyright © KAKEHASHI Inc. All Rights Reserved. 
 4

Slide 5

Slide 5 text

システム設計概要 Copyright © KAKEHASHI Inc. All Rights Reserved. 
 5

Slide 6

Slide 6 text

AppSync Copyright © KAKEHASHI Inc. All Rights Reserved. 
 6 ・AWSのフルマーネージドサービス(サーバー自体のセキュリティを考えなくて良い) ・AWSのサービスとの相性が良い ・DynamoDBを直接繋げたり ・複雑なビジネスロジックは Lambdaに分離したり ・CognitoやIAM認証、Lambdaで認証ロジックも作れたり ・WAFをボタンポチで追加できたり ・Subscriptionの実装が楽 ・Private APIモードが最近出た クロスアカウントアクセスで AppSync Private APIを使う話(カケハシTechBlog)

Slide 7

Slide 7 text

AppSync Copyright © KAKEHASHI Inc. All Rights Reserved. 
 7 ・カスタムディレクティブが使えない Validationロジックがどうしても膨らむ ・カスタムスカラーも使えない AppSync側で用意してくれているスカラー型 でいまのところ足りてはいるけど。。。 ・レスポンス自体はすべてのフィールドを返す実装 クライアントからクエリオペレーションされたフィールドのみ返すということができない 場合によってはレスポンスサイズ上限に引っかかってしまう Apollo Serverなどに比べると柔軟性は低い

Slide 8

Slide 8 text

ローカルでの開発 Copyright © KAKEHASHI Inc. All Rights Reserved. 
 8 インフラの管理だけでなく、アプリケーションコードの開発支援してくれる CDK ライブデバッグ可能( VS Code,WebStorm,IntelliJ IDEA) Live Lambda Developmentが優秀(Local環境でLambdaのロジック開発) メンバー毎の開発環境が簡単に構築できる まったく新しい開発体験をもたらす Serverless Stackとは何か(カケハシTechBlog)

Slide 9

Slide 9 text

Live Lambda Development 利用例 Copyright © KAKEHASHI Inc. All Rights Reserved. 
 9 ローカルでLambdaの ロジック開発に専念 専用の開発DB ライブデバッグ Lambda以外のサービ スはそのまま使える

Slide 10

Slide 10 text

Copyright © KAKEHASHI Inc. All Rights Reserved. 
 10 ご清聴ありがとうございました󰢛