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
ローカル環境から始めるAWS_Lambda入門.pdf
Search
dach
October 02, 2019
Technology
360
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ローカル環境から始めるAWS_Lambda入門.pdf
dach
October 02, 2019
More Decks by dach
See All by dach
dbt_ベストプラクティス_完全に理解した.pdf
dach
2
1.2k
プロジェクトマネージャーと炎の回避術
dach
0
990
SLO_By_Google_Cloud_Monitoring
dach
0
240
状態遷移テスト完全に理解しよう.pdf
dach
0
900
JWT完全に理解しよう-認証編-.pptx.pdf
dach
0
840
JWT完全に理解しよう-公開鍵編-.pptx.pdf
dach
0
750
チームの垣根を越境する_チーム間交換留学
dach
0
110
設計書のないサービスとの付き合い方.pptx.pdf
dach
0
210
designからWebページを作るやりかた完全に理解した.pdf
dach
1
400
Other Decks in Technology
See All in Technology
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
IoTハンズオンの舞台裏
shirouz
2
140
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
0
180
PdMをやめて、 "プロダクトビルダー"という 働き方に変えました / PdM to Product Builder
shikichee
2
720
Jetpack Compose で挑む新聞紙面UI ─ 複合ジェスチャー・ポリゴン記事領域・適応的ページ構成という3つの壁/droidkaigi2026
nikkei_engineer_recruiting
0
220
Bet AI Day 2026丨How We Bet AI: AIとともに働く場をつくる
layerx
PRO
2
2.5k
Genie Code ワークショップ 応用編 / Genie-Code-Workshop-advanced
databricksjapan
PRO
0
350
V8コントリビュート超入門
riyaamemiya
0
140
書籍『生成AIの安全性入門』の入門
wataoka
0
220
AIで仕事のやり方を変える
matsu7874
1
800
Benchmarking Vector Databases: pgvector vs. LanceDB
tsho
0
140
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
370
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
5.2k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.5k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Ruling the World: When Life Gets Gamed
codingconduct
0
320
Exploring anti-patterns in Rails
aemeredith
3
490
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
920
Mind Mapping
helmedeiros
1
350
Transcript
ローカル環境から始める AWS Lambda入門 @i-dach 2019/10
Who are you ? 職業 • 現在:カイゼンエンジニア • 将来:ムキムキカイゼンエンジニア
(トレーニング中) 所属 • DesignOne Japan, inc ◦ DOG主催 / diet部部長 / キックボクシング部部長 ◦ ジェネラリストとしてカイゼン&越境活動 ◦ 設計 / 開発 / 運用 / 保守 趣味 • 呼吸法の研究 • エンジニア • DIY(Iot) ←予定 最近熱いもの • golang Twitter: i-dach qiita: @i-dach github: i-dach 表記揺れ問題解決
今日お伝えしたいこと
Lambdaの挙動って ローカルでも確認できますよ (今更感)
本題に入る前に
Q. AWS Lambda使ってる / 事ある人?
ということで
知らない人のためのざっくり説明 AWS Lambda を使用することで、サーバーのプロビジョニングや管理をすることなく、コードを実行できます。課金は実際に使用した コンピューティング時間に対してのみ発生し、コードが実行されていないときには料金も発生しません。 Lambda を使用すれば、実質どのようなタイプのアプリケーションやバックエンドサービスでも管理を必要とせずに実行できます。コー ドさえアップロードすれば、高可用性を実現しながらコードを実行およびスケーリングするために必要なことは、すべて Lambda によ
り行われます。コードは、他の AWS サービスから自動的にトリガーされるよう設定することも、ウェブまたはモバイルアプリから直接 呼び出すよう設定することもできます。 AWS公式のLPより引用 つまりは、 Serverless !!
① event 簡略化するとこんな使い方 ② なんらかの処理した結果 event source some one
だからこんな使い方したり ① obj put ② event ③ objを加工
こんな使い方もできる ① データ欲しいんだけど... スマホ ② あとは任せた!! API Gateway Lambda
開発はこんなイメージ
どんなことができるか イメージがついたところで
DevOpsについて考えてみよう
DevとOpsをざっくり分解すると 開発します - まずは要求を達成する動くものを - e.g. - 設計 / 実装
/ テスト / デプロイ 運用します - 更にいい子にしましょう / 手のかからない子にしましょう - e.g. - リファクタリング / 監視 / 分析 / 管理
Lambdaにすることでメリデメって?
メリット 開発します - まずは要求を達成する動くものを - e.g. - 設計 / 実装
/ テスト / デプロイ 運用します - 更にいい子にしましょう / 手のかからない子にしましょう - e.g. - リファクタリング / 監視 / 分析 / 管理 やってくれるから 「開発」に集中できる! (後はコストが固定費じゃなくなる) イベントドリブンな 動きが簡単に!
デメリット 開発します - まずは要求を達成する動くものを - e.g. - 設計 / 実装
/ テスト / デプロイ 運用します - 更にいい子にしましょう / 手のかからない子にしましょう - e.g. - リファクタリング / 監視 / 分析 / 管理 利用状況によっては 高く付く ローカルでのテスト 複数人での開発では コンソール向いてない
コンソールでの開発じゃ 運用を考えたときに不安が残る
ようやく本題
Lambdaの挙動って ローカルでも確認できますよ
どいうことか
「Lambda」って どんな技術で動いているかを考える
Lambdaってどうやって動かしてる?
念の為確認
ということは
こういう風になってる かも(予想) EC2
ならdockerを使えば動くはず ※注意: Community Organizationのイメージ
使い方はDocker Hubにある通り docker run [--rm] -v <code_dir>:/var/task [-v <layer_dir>:/opt] lambci/lambda:<runtime>
[<handler>] [<event>]
やってみる $ ls -ltr total 2 -rw-r--r--@ 1 user group
Users 189 10 2 11:12 hello.py $ $ $ $ docker run --rm -v "$PWD":/var/task lambci/lambda:python3.7 hello.hello START RequestId: 52fdfc07-2182-154f-163f-5f0f9a621d72 Version: $LATEST 実行環境: Linux-4.9.184-linuxkit-x86_64-with-glibc2.2.5 実行dir: /var/task 実行users: bx_user1051 END RequestId: 52fdfc07-2182-154f-163f-5f0f9a621d72 REPORT RequestId: 52fdfc07-2182-154f-163f-5f0f9a621d72 Duration: 15.96 ms Billed Duration: 100 ms Memory Size: 1536 MB Max Memory Used: 22 MB null
OSとか異なるけど 簡単な挙動は確認できた
とりあえず学習コスト低めで 試してみようという方は これでも十分だと思うので是非お試しを
aws-sam-cliがあるので 実際に使うならそちらを推奨 ※今回は敢えてaws-sam-cliを使いませんでした
実際に開発するにあたっての ハマリポイント他にもあったりしますが 今回はここまで
まとめ
チキン南蛮最高
ではなく
Lambdaの挙動って ローカルでも確認できますよ
ご利用は計画的に ※注意: 2019/10/2時点
おしまい