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
0
3.3k
本番環境でAmplifyを3年くらい使ってみている弊社環境のご紹介
Amplify Boost Up #04
#AWSAmplifyJP
Kazuki Miura
PRO
December 14, 2023
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
APIからデータベースまで、全てサーバレスで作ってみよう!
miu_crescent
PRO
0
4
「フィニッシャーズ・スマイル」の開発と当日運用のお話
miu_crescent
PRO
1
52
AWS Systems Manager Incident Manager 使い所を考えてみた
miu_crescent
PRO
0
10
「入門 OpenTelemetry」 入門
miu_crescent
PRO
1
66
AZ 名とAZ ID の違いを 何度でも言うよ
miu_crescent
PRO
1
220
AWS Step Functions で マネコンとCDKの二刀流!
miu_crescent
PRO
1
57
AWS MediaServices の概要と活用事例
miu_crescent
PRO
2
100
ワイキキサークルホテルとその過ごし方
miu_crescent
PRO
1
280
私のawsの学び方、社外へ飛び出そう
miu_crescent
PRO
1
140
Other Decks in Technology
See All in Technology
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
470
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
データ分析エージェント Socrates の育て方
na0
5
480
いま注目のAIエージェントを作ってみよう
supermarimobros
0
340
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
100
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
540
AI時代を生き抜くエンジニアキャリアの築き方 (AI-Native 時代、エンジニアという道は 「最大の挑戦の場」となる) / Building an Engineering Career to Thrive in the Age of AI (In the AI-Native Era, the Path of Engineering Becomes the Ultimate Arena of Challenge)
jeongjaesoon
0
210
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
270
5分でカオスエンジニアリングを分かった気になろう
pandayumi
0
250
Generative AI Japan 第一回生成AI実践研究会「AI駆動開発の現在地──ブレイクスルーの鍵を握るのはデータ領域」
shisyu_gaku
0
310
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
190
LLMを搭載したプロダクトの品質保証の模索と学び
qa
0
1.1k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
A Tale of Four Properties
chriscoyier
160
23k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Optimizing for Happiness
mojombo
379
70k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Building an army of robots
kneath
306
46k
Building Adaptive Systems
keathley
43
2.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
The Cult of Friendly URLs
andyhume
79
6.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
Documentation Writing (for coders)
carmenintech
74
5k
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