Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AppSyncに全集中!subscriptionでハマったところ #jawsug_asa
Search
Kazuki Miura
August 26, 2021
Technology
1
1.1k
AppSyncに全集中!subscriptionでハマったところ #jawsug_asa
クォータに引っかからないようにチェックしましょう
AppSyncさんおすすめです
https://jawsug-asa.connpass.com/event/218077/
Kazuki Miura
August 26, 2021
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
パブリッククラウドもSaaSもいいとこどり!実際に使ってみた全貌と 推しポイントを紹介します!
miu_crescent
1
120
完全未経験から民放連盟賞を受賞したシステムを開発するまで
miu_crescent
1
11
地方でこそ、AWS公式コミュニティ 「JAWS-UG」を通じてクラウドを学ぼう!
miu_crescent
0
82
Media-JAWS x JAWS-UG 千葉支部 合同会オープニング
miu_crescent
1
21
Momento 実際組み込んでみた
miu_crescent
1
22
事業会社の未経験エンジニアチームが内製した2つのWebサービスのアーキテクチャを紹介します!
miu_crescent
2
160
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
270
サウナ
miu_crescent
1
48
メールセキュリティの DMARC周りの設定を少しずつ設定してみたお話
miu_crescent
1
340
Other Decks in Technology
See All in Technology
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
フルリモートワークはエンジニアの夢を叶えたか? #cm_odyssey
mamohacy
2
600
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8k
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
AI研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
130
[NIKKEI Tech Talk]Bias for Action!! 実践から学ぶための仕組とコミュニティ / Community for Practice and Learning
kanamasa
0
260
Amazon FSx for NetApp ONTAPのパフォーマンスチューニング要素をまとめてみた #cm_odyssey #devio2024
non97
0
220
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.3k
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
150
Flutter研修【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
51
8.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
44
4.7k
Rails Girls Zürich Keynote
gr2m
93
13k
The Cost Of JavaScript in 2023
addyosmani
31
4.7k
Practical Orchestrator
shlominoach
185
10k
GitHub's CSS Performance
jonrohan
1026
450k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
Visualization
eitanlees
139
14k
Code Reviewing Like a Champion
maltzj
517
39k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Building Your Own Lightsaber
phodgson
101
5.9k
Transcript
ʙsubscriptionͰϋϚͬͨͱ͜Ζʙ શूத AppSync に ݄ ࡾӜҰथ
ࡾӜ Ұथ (35) ւಓςϨϏ์ૹ JAWS-UG ࡳຈ MediaJAWS JP_Stripes ࡳຈ ήετϒϩΨʔ
ࣗݾհ ASA
ٱʑʹϥδΦମૢͯ͠ɺݞ௧͕ʜ͆ ͓ٱ͠ͿΓͰ͢
ࠓͷ͓ ΫΥʔλ͔ͬ͠Γ ֬ೝ͠Α͏ ࣄલʹ
None
ϥΠϒίϚʔε ಈըݟͳ͕Β͓ങ͍ ཁ݅ᶃಈը͕ࢭ·Βͳ͍ ཁ݅ᶄϦϩʔυແ͠ͷߋ৽ ཁ݅ᶅ71$ͷଆΘ͔ΒΜ ˞ڈؒͣͬͱਓݟͯͨ
൪ςϩοϓΈ͍ͨʹɺಈըͷ֎ଆ ൪༰ʹ߹ΘͤͯใΛΓସ͍͑ͨ
શूத AppSync に
GrpahQL
GrpahQL ① Query • Get とか List ② Mutation C
UD ③ Subscription OnCreate とか R
GrpahQL ③ Subscription OnCreate とか 8FC4PDLFUͰɺσʔλΛड͚औΔ ηογϣϯுΕͯΔਓɺશһಉ࣌ʹ
AppSync で⾏けそう! ൪ςϩοϓΈ͍ͨʹɺಈըͷ֎ଆ ൪༰ʹ߹ΘͤͯใΛΓସ͍͑ͨ
AWS Amplify AWS AppSync DynamoDB AWS Cloud and SaaS GOODS
Client ΤΞΩϟϥόϯ OIDC ೝূ GraphQL Query Mutation Subscription GraphQL SF IAM ೝূ コレクション プロダクション 在庫数マイナス InventryState 在庫数 条件付き書き込み 在庫数をもどす
AWS Amplify AWS AppSync DynamoDB AWS Cloud and SaaS GOODS
Client ΤΞΩϟϥόϯ OIDC ೝূ GraphQL Query Mutation Subscription GraphQL SF IAM ೝূ 在庫数マイナス InventryState 条件付き書き込み 在庫数をもどす දࣔ / ඇදࣔ ᶃMutation ↓ ᶄSubscription ↓ ᶅQuery コレクション プロダクション 在庫数
AppSync ͷ Subscription ͖͔͚ͬʹ શϢʔβʹ Query ΛϦϑΣον͢Δͷ Ξϯνύλʔϯ
AppSync ͷ Subscription ͖͔͚ͬʹ શϢʔβʹ Query ΛϦϑΣον͢Δͱ ҎԼͷΫΥʔλʹҾ͔͔ͬΓ·͢ ݟͯΔਓɺશһ͕Ұ੪ʹQueryͪ͠Ό͏ͱ 1000ਓ͍ͨΒΞτ
(Subscription ηογϣϯషΔͱ͖ʹফඅͳͷͰԿਓͰ͍͚ͪΌ͏)
AWS Amplify AWS AppSync DynamoDB AWS Cloud and SaaS GOODS
Client ΤΞΩϟϥόϯ OIDC ೝূ GraphQL Query Mutation Subscription GraphQL SF IAM ೝূ コレクション プロダクト 在庫数マイナス InventryState 在庫 条件付き書き込み 在庫数をもどす දࣔ / ඇදࣔ ᶃMutation ↓ ᶄSubscription ↓ ᶅQuery ᶃ 1ճ ↓ ᶄ ϊʔΧϯ ↓ ᶅ Ϣʔβ (1 + N) 1000 ΫΤϦ/s Ծʹ AppSync ͷ্ݶ؇͕௨ͬͨͱͯ͠ DynamoͷϗοτύʔςΟγϣϯ 3000/s ͕͋ΔͷͰɺ্͕ͦ͜ݶ 3000 RCU / 1000WCU
ؾ͕͍ͭͨͷ͕ ϦϦʔε1िؒલ
ճආࡦ
ճආࡦ ᶃ AppSync Λ্ݶ؇͢Δ • ͲΜͳʹ AppSync Λ্͛ͯɺDynamoDB ͷϗοτύʔςΟγϣϯʹ (3000
RCU) ʹҾ͔͔ͬΔͷͰɺࠜຊղܾͳΒͣ ᶄ Query ΛAPI GW + (Chache) + Lambda + DynamoDB ʹ͢Δ • LambdaͱϗοτύʔςΟγϣϯΛΩϟογϡͰ͙ ᶅ subscription Ͱৼͬͯ͘Δσʔλ͚ͩͰදࣔมߋ͢Δ • ͜Ε͕͋Δ͖࢟ɻϝοηʔδαΠζͳͲ੍ݶҰԠ͋Δɻ
ճආࡦ ᶃ AppSync Λ্ݶ؇͢Δ • ͲΜͳʹ AppSync Λ্͛ͯɺDynamoDB ͷϗοτύʔςΟγϣϯʹ (3000
RCU) ʹҾ͔͔ͬΔͷͰɺࠜຊղܾͳΒͣ ᶄ Query ΛAPI GW + (Chache) + Lambda + DynamoDB ʹ͢Δ • LambdaͱϗοτύʔςΟγϣϯΛΩϟογϡͰ͙ ᶅ subscription Ͱৼͬͯ͘Δσʔλ͚ͩͰදࣔมߋ͢Δ • ͜Ε͕͋Δ͖࢟ɻϝοηʔδαΠζͳͲ੍ݶҰԠ͋Δɻ
ᶃ AppSync Λ্ݶ؇͢Δ ᶄ Query ΛAPI GW + (Chache) +
Lambda + DynamoDB ʹ͢Δ ᶅ subscription Ͱৼͬͯ͘Δσʔλ͚ͩͰදࣔมߋ͢Δ ͋ΘٕͤͰ߈Ίͯ·͢(·ͩͰ͖ͯͳ͍)
AppSync ͷ Subscription ͖͔͚ͬʹ શϢʔβʹ Query ΛϦϑΣον͢Δͷ Ξϯνύλʔϯ
ແࣄʹ؇ਃ௨Δͷ͔ ޤ͏͝ظʂ