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
Lambdaの特徴を理解して活用する/Understanding and utilizing ...
Search
yayoi_dd
October 24, 2024
Technology
2
56
Lambdaの特徴を理解して活用する/Understanding and utilizing the features of Lambda
弥生株式会社 もくテク
集まれ!AWSやらかし体験談(2024/10/24)
https://mokuteku.connpass.com/event/330976/
yayoi_dd
October 24, 2024
Tweet
Share
More Decks by yayoi_dd
See All by yayoi_dd
【弥生】20250130_AWSマルチアカウント運用セミナー登壇資料
yayoi_dd
1
230
Amazon OpenSearchのコスト最適化とZeroETLへの期待 / Amazon OpenSearch Cost Optimization and ZeroETL Expectations
yayoi_dd
1
36
フロントエンドとバックエンド非同期連携パターンのセッションを見てきた話 / Talk about seeing a session on front-end and back-end asynchronous coordination patterns
yayoi_dd
0
40
reInventで学んだWebシステム運用のBadDayへの備え方 / How to Prepare for BadDay in Web System Operations Learned at reInvent
yayoi_dd
0
28
AWS reInventで感じた世界に見る生成AIの競争 / Competition in Generative AI as Seen Around the World at AWS reInvent
yayoi_dd
0
36
データの意味を適切に伝えましょう データ可視化のお手本/Conveying the Meaning of Data Appropriately: Exemplary Data Visualization
yayoi_dd
0
50
「失敗」から学ぶこと ~ソフトウェア開発と失敗の歴史~/Learning from 'Failures': The History of Software Development and Failures
yayoi_dd
0
52
ソフトウェアアーキテクチャーの基礎 エンジニアリングに基づく体系的アプローチ/Fundamentals of Software Architecture: A Systematic Approach Based on Engineering
yayoi_dd
0
54
ソフトウェア開発における「パーフェクトな意思決定」/Perfect Decision-Making in Software Development
yayoi_dd
3
3k
Other Decks in Technology
See All in Technology
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.3k
なぜ私は自分が使わないサービスを作るのか? / Why would I create a service that I would not use?
aiandrox
0
730
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
株式会社EventHub・エンジニア採用資料
eventhub
0
4.3k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.6k
Developers Summit 2025 浅野卓也(13-B-7 LegalOn Technologies)
legalontechnologies
PRO
0
710
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
190
開発組織のための セキュアコーディング研修の始め方
flatt_security
3
2.3k
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
580
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Producing Creativity
orderedlist
PRO
344
39k
Statistics for Hackers
jakevdp
797
220k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
What's in a price? How to price your products and services
michaelherold
244
12k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
Documentation Writing (for coders)
carmenintech
67
4.6k
Transcript
Lambdaの特徴を 理解して活用する 次世代本部 次世代会計Eチーム 前場 佑太
Agenda • 取引情報取込サービスをLambdaで作りました • こんな理由でLambdaを選びました • Lambdaでよかったこと • Lambdaでイマイチだったこと •
どんなときにLambdaを選ぶようにしたいか
取引情報取込サービスをLambdaで作りました • SMART分割プロジェクトにおける取引情報取込サービスを Lambdaで開発することにしました • 取引情報取込サービスとは • 取引の元情報を非同期で会計Nextへ連携するサービス
こんな理由でLambdaを選びました • LambdaとするかECSとするか • メッセージングサービス(SQS)を介した 非同期のデータ連携を行うことは決まっていた • Lambdaを利用することで実装ボリュームを減らすことができる • 複雑な処理をするわけではないので、実行時間も問題はなし
• スループットについても問題なし • LambdaでNGな理由がない
Lambdaでよかったこと • 実装ボリュームが抑えられた • 並列処理 • ポーリング • CDにおいても柔軟にデプロイ方法を設定することができた
Lambdaでイマイチだったこと • 実装 • New RelicのAPM関連のライブラリが利用できなかった(C#) • Secrets Managerの情報を取得するのに手間がかかる(実装が必要) •
ECSだったら不要。。
• 実行時間の制限 • Lambdaの最大実行時間は15分 • RDSへのデータ登録処理がデータ件数に比例して増加した • 最大実行時間を超えてしまうようなデータ量で連携された場合、 手動でのリカバリー対応が必要になってしまう Lambdaでイマイチだったこと
• リトライ • SQSの可視性タイムアウトを利用してリトライを実現 • 可視性タイムアウトは二重処理を防ぐためにLambdaの 想定実行時間より長くとる • →可視性タイムアウト時間=リトライ待機時間 •
非同期ではあるものの、レスポンスタイムを気にする必要はあった Lambdaでイマイチだったこと
どんなときにLambdaを選ぶようにしたいか • Lambdaで問題がないと確信できたときに、Lambdaを利用する • データ数、サイズなど、処理時間が一定以下であることが保証される場合 • サービスの動作観点だけでなく、オブザーバビリティやCI/CDなど 運用面についても検討済 • アカウント内の同時実行数制限についても検討済
• 期待するスループットが出せるか • アカウント内に他にLambdaがないか