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 使ってみた! サーバレスライブコマースの構築
Search
Kazuki Miura
PRO
November 04, 2020
Technology
670
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AppSync 使ってみた! サーバレスライブコマースの構築
#serverlessjp
Kazuki Miura
PRO
November 04, 2020
More Decks by Kazuki Miura
See All by Kazuki Miura
地域のCCoEの拡大を目指す 企業間コミュニティ 「re:light local」について
miu_crescent
PRO
0
53
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
5.2k
これだけはやっておいた方がよさそう?awsにおけるランサムウェア対策
miu_crescent
PRO
1
160
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
4
460
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
430
エンタメ方向のTを広げよう!Werner先生の クロージングキーノートを 深掘りするための小ネタ10
miu_crescent
PRO
1
210
Amazon Bedrockを活用した 報道向け文字起こしシステムの開発
miu_crescent
PRO
1
200
us-east-1 の障害が 起きると なぜ ソワソワするのか
miu_crescent
PRO
0
95
us-east-1 の障害が 起きると なぜ ソワソワするのか
miu_crescent
PRO
3
1.2k
Other Decks in Technology
See All in Technology
なぜ、あなたのエージェントは言うことを聞かないのか
segavvy
1
380
41歳でAWSが好きすぎてITエンジニアになったおっさんの話
yama3133
1
740
Aurora MySQL 8.4リリース! Rubyistが備えること / what-rubyist-should-prepare-for-aurora-mysql-8-4
fkmy
0
780
大 AI 時代におけるC# の事情 ~ぶっちゃけトークを交えながら~
nenonaninu
1
130
設計レビューとAIハーネスで向き合う AIが生み出した新しいボトルネックの対処法 / Design Reviews and AI Harnesses Against New Bottlenecks Created by AI
nstock
5
440
PHPで作って学ぶリアルタイム音声対話AIとWebSocket入門 by ムナカタ
munakata
0
140
AI時代におけるテストの基礎の再定義 / Rethinking the Fundamentals of Testing in the AI Era
mineo_matsuya
14
4.8k
ダッシュボード"開発"について 〜使われるダッシュボードのつくりかた〜
kimichan
0
200
AI時代の開発生産性は、個人技からチーム設計へ
moongift
PRO
4
2.5k
データエンジニアリングとドメイン駆動設計
masuda220
PRO
14
2.5k
Webの技術とガジェットで子どもも大人も楽しめるワクワク体験を提供する / Qiita Tech Festa Day 2026
you
PRO
1
180
伝票作成AIエージェントを支える、LLMOpsとインフラの選択肢 / AICon2026_takeda
rakus_dev
0
260
Featured
See All Featured
Docker and Python
trallard
47
4k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
410
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
470
A Modern Web Designer's Workflow
chriscoyier
698
190k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
420
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How GitHub (no longer) Works
holman
316
150k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Are puppies a ranking factor?
jonoalderson
1
3.7k
RailsConf 2023
tenderlove
30
1.5k
Transcript
AppSync 使ってみた サーバレスライブコマースの構築 これまた流⽤して、別のやつを ごしらえして、 ⽇ です( ) SOURCE: CENTERS
FOR DISEASE CONTROL AND PREVENTION SeverlessMeetup#10 2020.11.04(Wed)
HTB北 テレビ HTB北 テレビ HTB北 テレビ 三浦⼀樹 三浦⼀樹 三浦⼀樹
AppSync
AppSync ちゃんと分かってないけど 薦められたので使ってみた
10⽉頭にこんなイベントを開催しました 動画を⾒ながらお買い物イベント
本番の画⾯ headerにプレイヤー 下に shopifybuybutton APIで ハッシュタグ付き ツイート持ってくる
スケジュール不明のタイミングで 限定の商品を動画の下に出したい 追加要件: 時間限定商品の販売 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、 ほんとにそれを使うかはわからない
スケジュール不明のタイミングで 限定の商品を動画の下に出したい 追加要件: 時間限定商品の販売 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、 ほんとにそれを使うかはわからない AppSyncのSubscriptionでいける!?
None
None
None
あんまり詳しくない⼈が説明する
・query ・mutation ・subscription
・query ・mutation ・subscription 検索 変更 すぐ更新
mutationはコンソールから直接操作 mutationの結果がsubscriptionでフロントへ queryはフロントからDynamoを
timeSaleFlg 0 or 1
query { id : 'aircaravan' } type Query { singlePost(id:
ID!): Post } { "data": { "singlePost": { "id": "aircaravan", "timeSaleFlg": 1 } } } { "id": "aircaravan", "timeSaleFlg": 1 } AppSync Amplify DynamoDB
mutation console AppSync Lambda DynamoDB コンソールで操作
mutation { timeSaleFlg: 1 } type Mutation { putPost(id:
ID, timeSaleFlg: Int!): Post } { id: "aircaravan", timeSaleFlg: event.arguments.timeSaleFlg } Item: { id: "aircaravan", timeSaleFlg: event.arguments.timeSaleFlg } { "data": { "singlePost": { "id": "aircaravan", "timeSaleFlg": 1 } } } console AppSync Lambda DynamoDB query用にDynamoDBに保存
console AppSync Amplify subscription { timeSaleFlg: 1 } type
Subscription { onPutPost: Post @aws_subscribe(mutations: ["putPost"]) } WebSocket type Mutation { putPost(id: ID, timeSaleFlg: Int!): Post } { "data": { "onPutPost": { "id": "aircaravan", "timeSaleFlg": 1 } } }
subscription timeSaleFlg = 0 timeSaleFlg = 1
subscription AppSync AppSync Amplify { timeSaleFlg: 0 } {
timeSaleFlg: 1 } shopify GraphQL 商品の入れ替えもGraphQL <v-if="timeSaleFlg"> 非表示 表示
shopifyのコレクションにして IDをshopifyのコンソールから GraphQLで⼊れ替え スケジュール不明のタイミングで 限定の商品を動画の下に出したい 追加要件: 時間限定商品の販売 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、
ほんとにそれを使うかはわからない 現地でコンソールからmutation subscriptionでリロードなし!
スケジュール不明のタイミングで 限定の商品を動画の下に出したい 追加要件: 時間限定商品の販売 動画が途切れちゃうので リロードさせるのはNG 商品は予め用意するけど、 ほんとにそれを使うかはわからない 現地でコンソールからmutation subscriptionでリロードなし!
shopifyのコレクションにして IDをshopifyのコンソールから GraphQLで⼊れ替え COMPLETE!!$4くらい
not yet... H O W D O Y O U
L I K E W E D N E S D A Y ?
2020.10.28(WED) 2020.10.28(WED)
2020.11.04(WED) 2020.11.04(WED)
None
TO BE CONTINUED... H O W D O Y O
U L I K E W E D N E S D A Y ?