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
LabBase Nowと AWS Amplifyについて
Search
Kentaro Takata
November 18, 2020
Technology
0
140
LabBase Nowと AWS Amplifyについて
Kentaro Takata
November 18, 2020
Tweet
Share
More Decks by Kentaro Takata
See All by Kentaro Takata
Amplifyでいろんな機能拡張をしていったお話
guevara001
2
630
Other Decks in Technology
See All in Technology
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
430
あなたの知らない OneDrive
murachiakira
0
240
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
2
370
夢の印税生活 / Life on Royalties
tmtms
0
280
Claude Code x Androidアプリ 開発
kgmyshin
1
570
Backboneとしてのtimm2025
yu4u
4
1.5k
我々は雰囲気で仕事をしている / How can we do vibe coding as well
naospon
2
220
キャリアを支え組織力を高める「多層型ふりかえり」 / 20250821 Kazuki Mori
shift_evolve
PRO
2
300
知られざるprops命名の慣習 アクション編
uhyo
10
2.4k
株式会社ARAV 採用案内
maqui
0
340
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
Yahoo!広告ビジネス基盤におけるバックエンド開発
lycorptech_jp
PRO
1
270
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Building an army of robots
kneath
306
46k
Gamification - CAS2011
davidbonilla
81
5.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Code Reviewing Like a Champion
maltzj
525
40k
Transcript
LabBase Nowと AWS Amplify 株式会社POL 高田健太郎 PWA Night 2020/11/18
自己紹介 高田 健太郎 ENGINEER あだ名:ゲバラ 1989年生まれ/京都出身 中小ソフトハウスSE(5年)→POLのエンジニア(2019/6〜)
None
None
None
LabBase Nowについて
LabBase Nowについて
LabBase Nowについて
AWS Amplifyを使うことになった背景 「LabBase Nowの急速展開による運用改善のため、スピード感のあるリリース必要に なったため」 • 別ツールを使いイベント応募受け付け • イベント数の増加や運用面を改善する必要性 •
コロナの状況もありスピード感のある対応が必要 • 私がAWSを詳しいわけではなく、時間かかりそう • LabBaseはAWSで構築しているため将来的に連携しやすい
AWS Amplifyって何? 「AWSを利用して安全でスケーラブルなフルスタックアプリケーションを構築できるにす るツールとサービスのセット」
AWS Amplifyって何? 「AWSを利用して安全でスケーラブルなフルスタックアプリケーションを構築できるにす るツールとサービスのセット」 1.CLIを使って対話形式でバックエンド環境を構築できる 2.フロントエンドもバックエンドも一元管理できる 3.フロントエンド向けのコンポーネントもある
AWS Amplifyって何? 1.CLIを使って対話形式でバックエンド環境を構築できる • 対話形式で直感的に環境を構築 • 一つ一つAWSサービスを準備しなくていいので非常に楽 • AWSサービスに関する知識が多少あれば使えちゃう •
EC2は使わないのでサーバレスなバックエンド環境
AWS Amplifyって何? 2.フロントエンドもバックエンドも一元管理できる • バックエンドはCloud Formationで管理 • フロントエンドのコードと一緒にGithubやBitbucketで管理可能 • 連携してデプロイすることができます。
• ブランチごとに開発環境を用意することも簡単にできます。
AWS Amplifyって何?
AWS Amplifyって何? 3.フロントエンド向けのコンポーネントもある • フロントエンド向けにログイン画面といったUI ComponentやAPIモジュールとったラ イブラリも用意されている。
使えるバックエンド機能 • Authentications ◦ AWS Cognitoを使った認証処理 ◦ Googleアカウント連携にも対応 ◦ 今回は管理者向けの画面に使用。
APIで権限設定にも使える • API ◦ AppSync (GraphQL)を使ったAPIとスキーマ定義した DynamoDB ◦ GraphQLのqueryやmutationも自動生成 • Functions ◦ Lambda ◦ APIで作成したDynamoDBのイベントをtriggerに設定したり ◦ API呼び出しすることがCLI上で設定できます。
実際構築したアーキテクチャ
結局 AWSAmplifyは 使えるのか? サーバーレスっていいの?
結構 ツラミ あり • 推奨されたPythonのバージョンが使えない ◦ そのままだとデプロイ時に LambdaでPythonが使えない ◦ デプロイ時に毎回Python3.8をインストールする暴挙
◦ そしてCLIのバージョンアップのせいなのか、今はデプロイす らできない • 環境差分起きる ◦ 本番とDEV・STGでクエリのデフォルト limitの数が違う ◦ 同じバックエンドのソースを使っているのに • CLIがバグってる ◦ 自動生成されるスキーマが意図しないものになってる。 ◦ CLIバージョンアップで無事に修正はされた
使ってみてよかったこと • とにかく環境構築が早いのでとりあえず作りたいならうってつけ ◦ 簡単に環境構築できるのである程度動くモックアップも作りやすい ◦ 作りたいプロダクトに注力できる • サーバ落ちてるとか気にしなくなった ◦
休みの日サーバが落ちたと電話かかってくる恐怖から解放される ◦ デプロイも失敗しても前バージョンで動く • プロダクトとしてスケールしやすい ◦ AWSサービスは基本的にスケールを前提にしたものとなっている ◦ サービスが大きくなってからリプレースするといった心配もない ◦ 始めやすいので捨てやすい
結論 Amplifyはいいぞ
ありがとうございました よかったらTwitterフォローお願いします @POL53297840