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
350
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
980
SLO_By_Google_Cloud_Monitoring
dach
0
220
状態遷移テスト完全に理解しよう.pdf
dach
0
880
JWT完全に理解しよう-認証編-.pptx.pdf
dach
0
820
JWT完全に理解しよう-公開鍵編-.pptx.pdf
dach
0
730
チームの垣根を越境する_チーム間交換留学
dach
0
110
設計書のないサービスとの付き合い方.pptx.pdf
dach
0
210
designからWebページを作るやりかた完全に理解した.pdf
dach
1
380
Other Decks in Technology
See All in Technology
手塩にかけりゃいいってもんじゃない
ming_ayami
0
590
SONiCで構築・運用する生成AI向けパブリッククラウドネットワーク ~実装編~
sonic
0
220
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
1.1k
On-behalf-of Token exchange with AgentCore Identity
hironobuiga
2
220
200個のGitHubリポジトリを横断調査したかった
icck
0
130
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
260
Bedrock AgentCore RuntimeでAuth0 Changelog調査AIをアップグレードした話
t5u8a5a
1
160
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
2k
AIの性能が向上しても未解決な組織の重大問題は何か?/An Unsolved Organizational Problem in the Age of AI
moriyuya
4
680
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
210
アンオフィシャルな、オフィシャルからのお願い
wyamazak_devrel
0
110
AIのReact習熟度を測る
uhyo
2
600
Featured
See All Featured
A designer walks into a library…
pauljervisheath
211
24k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
710
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
140
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Ethics towards AI in product and experience design
skipperchong
2
310
Into the Great Unknown - MozCon
thekraken
41
2.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
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時点
おしまい