Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Web APIのAWS Lambda移行で工夫したこと
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
iwamot
PRO
May 21, 2024
Technology
4.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Web APIのAWS Lambda移行で工夫したこと
2024-05-22
アーキテクチャを突き詰める Online Conference
https://findy.connpass.com/event/314782/
iwamot
PRO
May 21, 2024
More Decks by iwamot
See All by iwamot
MCP Appsを作ってみよう
iwamot
PRO
4
830
自己紹介
iwamot
PRO
1
130
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
1.1k
8万デプロイ
iwamot
PRO
2
460
AIエージェント・マイクロサービス時代。AWSでの手軽な構築法を考えて試してみた
iwamot
PRO
1
140
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
10
3.1k
Developer Certificate of Origin、よさそう
iwamot
PRO
0
130
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた CODT 2025 クロージングイベント版
iwamot
PRO
1
230
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた
iwamot
PRO
3
230
Other Decks in Technology
See All in Technology
HacobuにおけるFDEとは/登壇資料(戸井田 裕貴)
hacobu
PRO
1
720
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
180
AI Made Us Faster at Solving the Wrong Problems
marceloancelmo
0
150
Snowflake Horizon Catalog と Apache Iceberg で作る オープンなデータ基盤
kitagawaz
0
390
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
300
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
820
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
420
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
210
【Findyテック文化祭ワークショップ】新卒エンジニア&採用担当と作る、 なりたい姿と今やるべき一歩
dip_tech
PRO
0
150
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
16
120k
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
240
おそらく日本で唯一のDevRelインターン生として
husengs7
0
110
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1369
210k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
270
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
620
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
250
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
My Coaching Mixtape
mlcsv
0
330
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
560
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
330
Transcript
Web APIのAWS Lambda移行で工夫したこと 2024-05-22 アーキテクチャを突き詰める Online Conference https://findy.connpass.com/event/314782/ ENECHANGE株式会社 VPoT兼CTO室マネージャー
岩本 隆史
岩本 隆史 (iwamot) 現職:ENECHANGE 全社的な技術施策の提案~実行 前職:AWS Japan クラウドサポートアソシエイト AWS Community
Builder (2024~) カテゴリ:Cloud Operations
移行の背景
電力使用量予測マイクロサービス https://enechange.jp/try/input
Elastic Beanstalk (Docker) で運用 https://aws.amazon.com/jp/elasticbeanstalk/
全社的なElastic Beanstalk卒業の気運 EOLになるプラットフォームから新しいバージョンへのアップグレードはメジャ ーバージョンアップになり、既存の環境とは別に新しい環境を作成する必要があ ります。 https://dev.classmethod.jp/articles/eb-platform-versionup-with-existing-config/
無駄なALBを発見
移行先の検討
EKS? ECS? Lambda?
EKSは学習コストがかかるので除外
APIはエンドポイント1つだけ POST /predict
Lambdaに決定
移行で工夫したこと
コンテナイメージの最適化 まず、可能な時はいつでもAWS が提供するベースイメージをコンテナイメージの 出発点として使用します。次に、マルチステージビルドを使用して、不要なレイ ヤやファイルを最終イメージに追加しないようにします。 https://aws.amazon.com/jp/blogs/news/optimizing-lambda-functions-packaged-as- container-images/ ベースイメージを python:slim から
public.ecr.aws/lambda/python に変更 最終イメージから機械学習モデルの訓練データを削除
「プロビジョニングされた同時実行」の設定 Lambda が呼び出しを実行するために新しい環境を初期化しなければならない状 況は、コールドスタートとして知られています。コールドスタートを緩和するた め、プロビジョニングされた同時実行を使用できます。 https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda- concurrency.html#reserved-and-provisioned
「プロビジョニングされた同時実行」の設定 使用率が50%を超えたらスケールするようApplication Auto Scalingを設定
可用性とレイテンシの監視 SLOを策定 期間:28日間 可用性:99.9%以上 レイテンシ:正常系レスポンスの95パーセンタイルが0.08秒以下 レイテンシ:正常系レスポンスの50パーセンタイルが0.06秒以下 エラーバジェットのバーンレート監視を内製ツールで開始
リトライ実装の依頼 Web API パターンのクライアントで行うべきエラーハンドリングの 1 つとしてリ トライがあります。 リクエスト頻度の制限 (=スロットリング) や、一時的な障害、ネットワーク起因
によるエラーなど一時的なエラーにはリトライで対応します。 https://aws.amazon.com/jp/builders-flash/202307/serverless-error-handling-2/ 開発チームにAPIエラー時のリトライ実装を依頼
移行後
ALBが半減
Lambdaの料金もEC2の半額 $110/月 → $55/月
NAT Gatewayはゼロに EC2削除によりインターネット通信が消滅 $45/月 * 6台のコスト削減
可用性やレイテンシも上々
まとめ
Web APIのAWS Lambda移行で工夫したこと コンテナイメージの最適化 「プロビジョニングされた同時実行」の設定 可用性とレイテンシの監視 リトライ実装の依頼