Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ダイニーにおける本番 Hasura 運用

ダイニーにおける本番 Hasura 運用

Hasura と共に歩んだ一年と半年を振り返りつつ、どういったプロダクト・組織において Hasura を採用するべきか、採用すると何が起きるかについて説明します。

Hiroaki KARASAWA

November 24, 2021
Tweet

More Decks by Hiroaki KARASAWA

Other Decks in Programming

Transcript

  1. Αࠞ͘ಉ͞ΕΔʢʁʣ֓೦ͱͷ੔ཧ 6 ま vs GraphQL ほ GraphQL is ほ GraphQL

    ち Hasura ま vs Hasura Cloud ほ Hasura Hasura ほ dinii Cloud Run OSS Hasura ち OSS Hasura ま vs Prisma ほ Prisma is GraphQL ORM ほ
  2. 7

  3. μΠχʔͱ͸ 8 ま 2020 1 ま 3 6 ほ Vertical

    SaaS Ϩδ ΩΦεΫ ΩονϯσΟεϓϨΠ μογϡϘʔυ ϋϯσΟ ϞόΠϧΦʔμʔ ϓϦϯλ࿈ܞ ࣗಈ௼મػ࿈ܞ ϓϦϯλ࿈ܞ LINE Mini App
  4. ͍ͭ Hasura Λ࠾༻͢Δ΂͖͔ 14 PostgreSQL ま PostgreSQL ま MySQL ほ

    PostgreSQL Citus ま PostgreSQL ま PostgreSQL
  5. ຊ൪ Hasura ӡ༻ͷצॴ 17 ま ORM Hasura ほ Hasura ま

    ま Hasura Web UI Hasura ほ Hasura ま TypeORM Hasura CI
  6. όοΫΤϯυͷ TypeORM ͷܕఆٛͱ Hasura ͷϚΠάϨʔγϣϯϑΝΠϧʹ੔߹ੑ͕͋Δ͜ͱΛ CI Ͱ֬ೝ͢Δํ๏ 18 1. Hasura

    Web UI 2. TypeORM CI 1. Hasura 2. TypeORM 3. = Hasura TypeORM ❌ 
 = Hasura TypeORM ✅
  7. ຊ൪ Hasura ӡ༻ͷצॴ 19 Remote schema ま ほ Remote schema

    ほ Remote schema ま ほ Remote schema ほ Hasura
  8. ຊ൪ Hasura ӡ༻ͷצॴ 20 ま ほ Hasura ほ JWT ち

    ex: x-haura-shop-id=xyz JWT order.shopId=xyz order ま order.user.userId = xyz ま ほ Remote schema
  9. ͦͷଞͷצॴ 22 Hasura Web ま GraphiQL ま 
 ま REST

    Remote schema Hasura Actions ま Remote schema ま Event Trigger ま
  10. 23

  11. ·ͱΊ 24 1. Hasura 2. dinii 3 SWE 3. 3

    1 ま https://about.dinii.jp/recruit ま 3 ま 1 1 3