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
本番環境でAmplifyを3年くらい使ってみている弊社環境のご紹介
Search
Kazuki Miura
PRO
December 14, 2023
Technology
3.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
本番環境でAmplifyを3年くらい使ってみている弊社環境のご紹介
Amplify Boost Up #04
#AWSAmplifyJP
Kazuki Miura
PRO
December 14, 2023
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
大 AI 時代におけるC# の事情 ~ぶっちゃけトークを交えながら~
nenonaninu
1
190
論語・武士道・産業革命から見る かわるもの、かわらないもの
ichimichi
7
860
”AIを使う” から ”AIに任せる” へ ─ 開発プロセスを再設計してAIを組織標準にするまで
cyberagentdevelopers
PRO
2
150
そのドキュメント、自動化しませんか?
yuksew
1
430
AI x 開発生産性を取り巻く予算戦略と投資対効果
i35_267
7
3.3k
AI研修(Day2)【MIXI 26新卒技術研修】
mixi_engineers
PRO
1
290
書籍セキュアAPIについて
riiimparm
0
320
Webアプリ認証の全体像 / The Big Picture of Web App Authentication
kitano_yuichi
1
450
複数プロダクトで進めるAI機能実装 ── 実践から得たリアルな学びとロードマップ実現への挑戦 / AICon2026_yanari
rakus_dev
1
280
ここは地獄!つらい朝会を体験することで、チームとしてのより良い振る舞いに気づくワークショップ / The stand-up meeting from hell in the game industry
scrummasudar
0
310
データエンジニアリングとドメイン駆動設計
masuda220
PRO
14
2.6k
AI Coding Agent時代のcdk-nagガードレール 〜組織ルールを強制CIで守り抜く設計の挑戦〜
mhrtech
3
530
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
AI: The stuff that nobody shows you
jnunemaker
PRO
9
840
Statistics for Hackers
jakevdp
799
230k
The Curse of the Amulet
leimatthew05
2
13k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Believing is Seeing
oripsolob
1
170
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
180
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
420
Transcript
本番Amplify 環境のご紹介 本番Amplify 環境のご紹介 HTB北海道テレビ放送 三浦一樹
三浦一樹(37) 北海道札幌市在住 秋田→東京→札幌 1
#aws_carnival 〜秋の祭典スペシャル!〜 Startupだ!JAWS-UGだ!Amplifyだ! 2023年11月4日(土) 2
お仕事紹介 北海道を対象とした特定地上基幹放送事業者 3
テレビ 見てます? 電 波 📡で 4
ちなみに 我が家に 視聴環境ないですw 5
お仕事紹介 BtoB事業 BtoC事業 テレビのCMや番組提供 番組関連のイベント事業 放送収入 番組の配信や 関連グッズの販売など ファンの方に直接お届けする 放送外収入
北海道を対象とした特定地上基幹放送事業者 01 02 6
お仕事紹介 動画配信事業 EC事業 8人のチーム 未経験から勉強した エンジニア3名 (+SES 2名) ネットデジタル事業部 7
VPC LESS VPC LESS VPC LESS OS LESS OS LESS
OS LESS 8
お仕事紹介 動画配信事業 EC事業 サーバレスじゃないとムリ! ネットデジタル事業部 9
動画配信事業 EC事業 Amplify Step Functions で 大体できてます 10
OIDC OIDC OIDC DynamoDB DynamoDB S3 MediaConvert S3 DynamoDB AppSync
Lambda API-GW Step Functions API-GW Amplify Amplify 担当者向け CMS 倉庫 システム BFF Frontend Backend アーキテクチャ amplify-cli で作ってる 11
トピックス 型ファイル FRONTEND と BACKEND が分離しているので。。。 環境変数 知らなくて損したこと 技術的負債 溜まってしまった技術的負債の
ご紹介 12
GraphQL の 型ファイル の受け渡し 13
AppSync DynamoDB query 14
AppSync DynamoDB generated.tsx query 型ファイル 15 Code Generator
AppSync DynamoDB generated.tsx query ??? どこに置く? 一致してないと 16
BFF frontend AppSync AppSync DynamoDB DynamoDB prod dev prod stg
dev prod stg dev backend backend frontend frontend frontend generated.tsx generated.tsx wget wget ビルド前に wget で持ってくる 17
困ってたこと 18
環境変数 ってどうやって管理してますか? 19
環境変数 諸事情により、90個くらいありまして、、 20
wiki から手動コピペ時代が長らく続き、、 環境変数 21
環境変数 .env env.json aws cli 22
amplify cli に無いから 諦めてた、、笑 環境変数 .env env.json aws cli 23
困ってること 24
EpisodeGroup 1対多 1対多 DynamoDB AppSync Program Connection ConnectionEpisode Episode 1対多
1対1 1対1 初期ロード時に 全てのデータを Recoil に格納 番組情報は 全部で10MB くらい amplify-cli で、どんどん増やしちゃった 番組系のデータ 25
EpisodeGroup 1対多 1対多 DynamoDB AppSync Program Connection ConnectionEpisode Episode 1対多
1対1 1対1 初期ロード時に 全てのデータを Recoil に格納 番組情報は 全部で10MB くらい amplify-cli で、どんどん増やしちゃった 番組系のデータ Transformer v1 のままここまできちゃって @connection を気軽に使って繋げまくった 乗り換えなり、DynamoDB のリファクタを考えたい 26
Merged API と Momento で解決 27
AppSync のトークン消費量がえらいことになってて、、 なんとかなったお話です。 28
まとめ 運用上の細かい使い方もコミュニティで共有していき ましょう! ものすごいスピードで新規開発と機能追加できたのは Amplifyのおかげ! 技術的負債の返済を滞ってきたのは我々の所為 Transformer v1 → v2
対応を放置 @connection ディレクティブをノリで使う Amplify Gen 2 でこれらを乗り越えていきたいです! 29