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
130
LabBase Nowと AWS Amplifyについて
Kentaro Takata
November 18, 2020
Tweet
Share
More Decks by Kentaro Takata
See All by Kentaro Takata
Amplifyでいろんな機能拡張をしていったお話
guevara001
2
480
Other Decks in Technology
See All in Technology
開発生産性大幅アップ!Postman VS Code拡張機能
nagix
2
360
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
0
2.6k
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
200
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
530
DevOpsDays History and my DevOps story
kawaguti
PRO
9
2.4k
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.7k
サーバー間 GraphQL と webmock-graphql の話 / server-to-server graphql and webmock-graphql
qsona
2
180
Oracle Cloud Infrastructure:2024年4月度サービス・アップデート
oracle4engineer
PRO
1
190
日本におけるデータエンジニアリングのこれまでとこれから
foursue
16
4.2k
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
170
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
230
API Gatewayと少し仲良くなってみた!
masuchoku
0
100
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
Creatively Recalculating Your Daily Design Routine
revolveconf
210
11k
Designing for Performance
lara
601
67k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Docker and Python
trallard
34
2.7k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Being A Developer After 40
akosma
57
580k
Agile that works and the tools we love
rasmusluckow
325
20k
How to train your dragon (web standard)
notwaldorf
73
5.2k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
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