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
re:Invent 初参加報告と AWS Lambda Provisioned Concurrency 触ってみた
Search
mominosin
December 18, 2019
Technology
2
360
re:Invent 初参加報告と AWS Lambda Provisioned Concurrency 触ってみた
AWS re:Invent 2019 報告会 @ Repro株式会社
mominosin
December 18, 2019
Tweet
Share
More Decks by mominosin
See All by mominosin
DatadogをTerraform で触ってみた
mominosin
0
1.7k
AWS Transit Gateway を触ってみた
mominosin
1
700
Other Decks in Technology
See All in Technology
Gradle Build Scanを使ってビルドのことを知ろう potatotips #87
tomorrowkey
2
170
Android Target SDK 35 (Android 15) 対応の概要
akkie76
0
200
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
1
1.9k
コードや知識を組み込む / Incorporate Code and knowledge
ks91
PRO
0
160
今さら聞けないDocker入門 〜 Dockerfileのベストプラクティス編
devops_vtj
22
6.6k
Secrets of a PowerShell "Guru"
guyrleech
1
110
require(ESM)とECMAScript仕様
uhyo
4
1k
個人のAWSアカウントをマルチ運用してみた
miura55
2
260
LangSmith入門―トレース/評価/プロンプト管理などを担うLLMアプリ開発プラットフォーム
os1ma
5
790
Handling focus in 2024
tahia910
0
620
TDD - Test Driven Drupal
opdavies
0
3k
M5stackで使用できるpHセンサの開発
shinrinakamura
1
290
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
Facilitating Awesome Meetings
lara
43
5.6k
A Philosophy of Restraint
colly
197
16k
Visualization
eitanlees
137
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
34
6.1k
How to train your dragon (web standard)
notwaldorf
75
5.2k
jQuery: Nuts, Bolts and Bling
dougneiner
60
7.2k
Into the Great Unknown - MozCon
thekraken
15
1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Designing Experiences People Love
moore
136
23k
Infographics Made Easy
chrislema
238
18k
How to name files
jennybc
65
93k
Transcript
© UniFa Inc. re:Invent 初参加報告と AWS Lambda Provisioned Concurrency 触ってみた
ユニファ株式会社 鈴木進吾
© UniFa Inc. プロフィール 名前: 鈴木進吾 (すずきしんご) SNS: @mominosin •
ユニファという会社でインフラしています • 今年の秋頃まで一人インフラしてました ◦ 一人じゃなくなったことは関係なく初re:Invent ◦ 会社としても初参加 • Fargate,Lmabda
© UniFa Inc. ユニファって
© UniFa Inc. テクノロジーの力で “家族” をもっと豊かに Bringing "families" closer together
through the power of technology
© UniFa Inc. 今後の展開:「スマート保育園」をルクミーと一緒に
© UniFa Inc. re:Invent初参加してきました
© UniFa Inc. 楽しみました
© UniFa Inc. re:Invent初参加 • 英語話せない • 会社から一人 • 海外経験少ない
行く前は不安
© UniFa Inc. re:Invent初参加 • 英語話せない ◦ Excuse Me +
Where is ~. で生き残れた • 会社から一人 ◦ 事前イベントで知り合った方 ◦ AWS営業さん企画の集まりが多々あった • 海外経験少ない ◦ JTBのツアーでなんとか とりあえずなんとかなった
© UniFa Inc. re:Invent初参加 • チームで行うセッションの参加難しい ◦ Hackathon、Game Day、Security Jam
◦ 言語のハードルが高い ただ英語つらいのは変わらないので
© UniFa Inc. re:Invent初参加 • Jam Loungeへいこう ◦ 日本のSAのかたも? •
Security Jamとは異なるが ◦ 類似の問題をWEBから Security Jamだけなら
© UniFa Inc. re:Inventで発表のあった AWS Lambda Provisioned Concurrency を触ってみました
© UniFa Inc. 元々は会社で利用開始したサービスの話そうとしましたが… • AWS Fargate Spot 以外事前アップデートだった… •
なのでAWS Lambda Provisioned Concurrencyを触ってみま した
© UniFa Inc. AWS Lambda Provisioned Concurrencyとは • Lambdaのコールドスタート問題に対応可能 •
前もって決めた数のLambdaを起動する • 起動し続けるので追加で費用が発生する
© UniFa Inc. Lambdaのコールドスタート • Lambdaのレイテンシが悪くなる事 ◦ Lambdaのコンテナが新規で起動する際 ▪ 同時実行数の増加など
▪ デプロイされた際 • VPC環境ではENIのマウントの影響もあった ◦ 9月のアップデートで解消済み?
© UniFa Inc. Lambdaのコールドスタート • 定期的にlambdaやAPI Gatewayにアクセスする ◦ 停止してるコンテナがない状態にする •
今回のアップデートでこの対策が不要となる? ◦ コストは増加するはずなので状況に応じて これまでの対策と今後
© UniFa Inc. AWS Lambda Provisioned Concurrencyを触ってみた • 「チュートリアル: Lambda
プロキシ統合による Hello World API の構築」に乗っ取りサンプル環境構築 ◦ https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/api -gateway-create-api-as-simple-proxy-for-lambda.html ◦ メモリ量でも挙動が変わる話はありますがデフォルト(128MB)利用 お触りサンプル
© UniFa Inc. AWS Lambda Provisioned Concurrencyを触ってみた • 以下のパターンで比較する ◦
API Gateway + Lambda ◦ API Gateway + Lambda(Provisioned Concurrency) ◦ API Gateway + VPC Lambda ◦ API Gateway + VPC Lambda(Provisioned Concurrency) • 秒間100リクエストを10秒間 ◦ Vegetaを利用 お触り方法
© UniFa Inc. AWS Lambda Provisioned Concurrencyを触ってみた • テスト結果 •
2回目(コールドスタート起きてないこと確認) VPCなしパターン Provisioned Concurrency 200ms未満(件数) 400ms未満(件数) 400ms以上(件数) 無 962 35 3 有 980 19 1 無 993 7 0 有 994 6 0
© UniFa Inc. AWS Lambda Provisioned Concurrencyを触ってみた • テスト結果 •
2回目(コールドスタート起きてないこと確認) VPCパターン Provisioned Concurrency 200ms未満(件数) 400ms未満(件数) 400ms以上(件数) 無 952 22 26 有 983 17 0 無 986 14 0 有 995 5 0
© UniFa Inc. AWS Lambda Provisioned Concurrencyを触ってみた 比較 有 無
952 22 26 有 有 983 17 0 VPC Provisioned Concurrency 200ms未満(件数) 400ms未満(件数) 400ms以上(件 数) 無 無 962 35 3 無 有 980 19 1
© UniFa Inc. まとめ • Provisioned Concurrencyでコールドスタートの数が減らせる • CloudWatchを確認する消費量が確認できた ◦
Provisioned Concurrencyの AutoScalingなどでコスト調整できるかも?
© UniFa Inc. おまけ • Provisioned Concurrencyを950にする ◦ CloudWatch Logsのストリームが950一気に増える
• 950プロビジョニングしたが今回のテストでは50消費 • 2回目は消費が減るので APIGateway間で効率化される?