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
December 14, 2023
Technology
0
2.3k
本番環境でAmplifyを3年くらい使ってみている弊社環境のご紹介
Amplify Boost Up #04
#AWSAmplifyJP
Kazuki Miura
December 14, 2023
Tweet
Share
More Decks by Kazuki Miura
See All by Kazuki Miura
事業会社の未経験エンジニアチームが内製した2つのWebサービスのアーキテクチャを紹介します!
miu_crescent
2
100
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
210
サウナ
miu_crescent
1
40
メールセキュリティの DMARC周りの設定を少しずつ設定してみたお話
miu_crescent
1
310
#jawsdays を含む #jawsug 全体の活動について
miu_crescent
1
100
ラスベガスに招待されて AWSの勉強をしてきた話
miu_crescent
10
4.4k
もめんと会
miu_crescent
0
310
ECサービスでのStripe実装例
miu_crescent
0
220
#MIERUNEBBQ 初めてのAWS Step Functions
miu_crescent
0
250
Other Decks in Technology
See All in Technology
オンプレADを昇降格したらAWS上のシステムのいろんなところが通信できなくなった話
hamijay_cloud
0
230
クラウドネイティブな省エネサービスの内製開発で、BizDevOpsを実現する / Achieving BizDevOps in in-house development of cloud-native energy-saving services
genkiogasawara
1
130
From Fragile to Antifragile Internal Platforms
mfpais
PRO
0
110
Safie Viewer for iOS の 技術的負債との付き合い方
safie
0
130
株式会社EventHub・エンジニア採用資料
eventhub
0
2.3k
内製したSlack Appで頑張るIncident Response@Waroom Meetup #1 / Incident Response with Slack App in 10X
sota1235
0
440
LayerXとMDMのリスク評価と年次対応の実例(公開版)
ken5scal
0
380
Custom logging with slog Making Logging Fun Again!
masumomo
3
420
SSII2024 [OS3] 生成AIと完全自動運転
ssii
PRO
0
120
不要な DNS リソースレコードは消そう / Delete unused DNS records
wa6sn
4
3k
actionlint の Linter 設計
rhysd
5
680
「メタスキル」を意図的に使おう ~自律的なチームを育むマネージャーのセルフマネジメント~/Use Metaskills consciously
ohnoeight
1
510
Featured
See All Featured
Statistics for Hackers
jakevdp
791
220k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
15
8.5k
Speed Design
sergeychernyshev
1
65
GraphQLの誤解/rethinking-graphql
sonatard
57
9.4k
Automating Front-end Workflow
addyosmani
1359
200k
4 Signs Your Business is Dying
shpigford
176
21k
Done Done
chrislema
178
15k
From Idea to $5000 a Month in 5 Months
shpigford
377
46k
Designing on Purpose - Digital PM Summit 2013
jponch
112
6.6k
GitHub's CSS Performance
jonrohan
1025
450k
In The Pink: A Labor of Love
frogandcode
138
21k
Agile that works and the tools we love
rasmusluckow
325
20k
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