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
FaaS (Lambda) から Container (Fargate) へ
Search
Hiroyuki Kano
June 10, 2019
Programming
0
400
FaaS (Lambda) から Container (Fargate) へ
- Lambda でできることはFargate でも(だいたい) できる
- ローカル環境での開発が楽、という点だけでもLambda から Fargate への乗り換えポイントになるのでは?
Hiroyuki Kano
June 10, 2019
Tweet
Share
Other Decks in Programming
See All in Programming
TFLintカスタムプラグインで始める Terraformコード品質管理
bells17
2
160
CSC509 Lecture 04
javiergs
PRO
0
300
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
110
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
0
180
Go言語はstack overflowの夢を見るか?
logica0419
0
260
ソフトウェア設計の実践的な考え方
masuda220
PRO
4
580
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
240
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
170
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
1.3k
XP, Testing and ninja testing ZOZ5
m_seki
3
630
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.3k
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
180
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to Ace a Technical Interview
jacobian
280
24k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Writing Fast Ruby
sferik
629
62k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Visualization
eitanlees
149
16k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Faster Mobile Websites
deanohume
310
31k
Docker and Python
trallard
46
3.6k
Transcript
FaaS (Lambda) から Container (Fargate) へ 2019/06/10 Otemacho.go#2
自己紹介
About kanou: •
[email protected]
• @wukann • フロントエンドエンジニア…? • 入社時は
.NET エンジニアだったような… • Android アプリも作ってたような… • AWS の管理もしてるような… • C#, TypeScript, Kotlin が好き • Go? あ、うん、いい言語だと思いますよ!
マイブーム 「ヨーグルト」
マイブーム • ビフィズス菌入りヨーグルト 500g / day 摂取を続けています • 便通改善のため (便秘症なので…)
• 便通が良くなったゾ! • ٩(๑´0`๑)۶
None
マイブーム • ヨーグルトの自作をはじめました • ヨーグルト購入コスト抑制 • なんか楽しい
None
Lamda と Fargate
まずお詫び… • Golang の環境準備が間に合いませんでした… orz • 話の趣旨は AWS (FaaS と
Container) なので Go に限らないもの • …とはいえ Otemachi.go の場で Go の準備ができていないのはダメで すね… (´・ω・`) • ごめんなさい。
Lambda • AWS の FaaS • サーバー管理不要 • 関数の実行時間に応じて課金 •
柔軟にスケールする
Lambda • アプリケーション開発 • API 固定 • 動作確認のためにはデプロイが必要 • ローカルデバッグ環境もあるにはあるが…
• デバッグ大変… (´・ω・`) • CloudWatch に出力される標準出力 (console.log の類)を見ていく… • 環境の制約がけっこうある • タイムアウト • ランタイムバージョン
Fargate • AWS のコンテナ実行基盤の1つ • サーバー管理不要 • コンテナを動かすサーバー (EC2) を
AWS が裏でたくさん用意しており、必要に 応じて利用するイメージ • それゆえの制約もある • サーバーへの SSH 接続不可、とか • コンテナ実行時間に応じて課金 • 柔軟にスケールする
Fargate • アプリケーション開発方法 • API 縛りは (多分) なし • docker
run で起動すればだいたい OK • ローカルで動作確認できる • docker run • デバッグ • docker run • 環境の制約 • docker で起動すればだいたい OK
DEMO
DEMO cron (CloudWatch Event) 時間間隔: 1min Lambda (FaaS) ECS on
Fargate (Container)
言いたかったこと • Lambda でできることは Fargate でも (だいたい) できる • FaaS
ゆえの制約がキツい… • Docker で動けば Fargate でも (だいたい) 動く。 • ローカル環境での開発が楽、という点だけでも Lambda から Fargate への乗り換えポイントになるのでは?
Appendix • Inspired by • https://www.slideshare.net/neuecc/true-cloud-native-batch- workflow-for-net-with-microbatchframework • Reference •
https://www.amazon.co.jp/%E5%A4%A7%E4%BE%BF%E9%80%9A- %E7%9F%A5%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%E3 %82%88%E3%81%86%E3%81%A7%E7%9F%A5%E3%82%89%E3%81 %AA%E3%81%84%E5%A4%A7%E8%85%B8%E3%83%BB%E4%BE%B F%E3%83%BB%E8%85%B8%E5%86%85%E7%B4%B0%E8%8F%8C- %E8%BE%A8%E9%87%8E%E7%BE%A9%E5%B7%B1- ebook/dp/B00B5OPWXA