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 Gen2でLambda構築してみた
Search
KMiura
July 05, 2024
Technology
1
1.4k
Amplify Gen2でLambda構築してみた
2024/07/07 JAWS ミート 2024
https://jaws-ug-tokaido.connpass.com/event/315732/
KMiura
July 05, 2024
Tweet
Share
More Decks by KMiura
See All by KMiura
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
77
Pythonでルンバをハックしてみた
miura55
0
150
あなたの知らないクラフトビールの世界
miura55
0
340
Storage Browser for Amazon S3を触ってみた + α
miura55
0
220
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
210
あのボタンでつながるSORACOM
miura55
0
130
Postman Flowsで作るAPI連携LINE Bot
miura55
0
380
Lambdaと共に歩んだAWS
miura55
3
840
Other Decks in Technology
See All in Technology
AIAgentの限界を超え、 現場を動かすWorkflowAgentの設計と実践
miyatakoji
0
130
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
0
120
OCI Network Firewall 概要
oracle4engineer
PRO
1
7.8k
SwiftUIのGeometryReaderとScrollViewを基礎から応用まで学び直す:設計と活用事例
fumiyasac0921
0
140
Flaky Testへの現実解をGoのプロポーザルから考える | Go Conference 2025
upamune
1
420
実装で解き明かす並行処理の歴史
zozotech
PRO
1
320
AI駆動開発を推進するためにサービス開発チームで 取り組んでいること
noayaoshiro
0
170
コンテキストエンジニアリングとは? 考え方と応用方法
findy_eventslides
4
900
SREとソフトウェア開発者の合同チームはどのようにS3のコストを削減したか?
muziyoshiz
1
100
Shirankedo NOCで見えてきたeduroam/OpenRoaming運用ノウハウと課題 - BAKUCHIKU BANBAN #2
marokiki
0
140
KMP の Swift export
kokihirokawa
0
330
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
2k
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
How STYLIGHT went responsive
nonsquared
100
5.8k
The Cult of Friendly URLs
andyhume
79
6.6k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Context Engineering - Making Every Token Count
addyosmani
5
180
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Code Reviewing Like a Champion
maltzj
525
40k
Transcript
Amplify Gen2でLambda構築してみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • Acallのバックエンドエンジニア • JAWS UG名古屋 運営
• 好きなAWSのサービス:Lambda, ECS, CDK @k_miura_io koki.miura05
ミートにクロスバ イクで行く
ミートにクロスバ イクで行く
休みなしで5時間はキツイw
AWS Amplifyにまつわる自分語り • 新卒時代に何かのきっかけでAmplifyの存在を知り、なんか面白そう と思って会社のテックブログに書いた • 前職では当時勤務してた学生がバックエンドだけAmplifyで組むとい うことをしてたのでAmplifyを勉強してた • ↑の構成をCDKにリプレイスしたりしてた
新卒時代に書いてた テックブログ→
Amplify Gen2 がGA🎉
Gen2でのアップデート • ローカル開発用のサンドボックス環境構築 • バックエンドやスキーマ定義はすべてTypeScriptで定義 • インフラ構築はCDKベース
ということは… CDK慣れてたらAmplify Gen2も余裕 で攻略できる(仮説)
試してみた
今回のシステム構成 • Amplifyで作成したLambda関数か らあらかじめ別で作成したSNSに トピックをPublishしてSQSにPush する • EventBridge PipesでSQSのトピッ クをSubscribeして、StepFunctions
で組んだバッチ処理をする
ドンピシャなサンプル発見w https://bit.ly/3YajSFB
しかしエラーが…
どうやらCDKのモジュールはインストール されてなさそう • Amplifyのバックエンド定義ファイルにCDKのようにリソース定義を追加できても必要なリ ソースの定義モジュールは別途インストールする必要があるよう • 今回のケースであればIAMのモジュールを追加すれば解決した • ドキュメントにそれぐらい書いてくれればいいのに(もし見落としてたらこっそり教えて) ↑アクセスポリシーを付与するときにはCDK使ってねとしか書いてない
それでもエラーが…
間違い探し エラー OK
間違い探し(答え合わせ) エラー OK
DEMO
まとめ • Amplify Gen2がCDK互換に移行したことでフロントエンドだけではなく、バックエンド、イ ンフラ構成までをすべてTypeScriptで組めるようになった • Lambdaのアクセス権限も簡単に定義できるようになってかなり便利になったと感じた • GAになったとはいえまだまだ伸びしろがある要素もあるのでこれから成長していくところ を見届けたいところ
やはりCDK、CDKはすべてを解決する
CDKカンファレンス行きたかったよー(T_T)
宣伝 https://bit.ly/3RVsKuC
END