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
72
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
“お客さま視点”を手に入れろ!! / Get the Customer’s Perspective!!
yayoi_dd
0
85
プロジェクト改善、まずは“ネタ出しの文化”から / Improving Projects Starts with a Culture of Idea Generation
yayoi_dd
0
83
使いにくい仕様を改善した件 / How We Improved a Difficult-to-Use Feature
yayoi_dd
0
78
弥生のQAエンジニア 品質保証活動と今後の課題 / Yayoi QA engineers, Quality assurance activities and future challenges
yayoi_dd
0
110
【弥生】20250130_AWSマルチアカウント運用セミナー登壇資料
yayoi_dd
2
3.4k
Amazon OpenSearchのコスト最適化とZeroETLへの期待 / Amazon OpenSearch Cost Optimization and ZeroETL Expectations
yayoi_dd
1
96
フロントエンドとバックエンド非同期連携パターンのセッションを見てきた話 / Talk about seeing a session on front-end and back-end asynchronous coordination patterns
yayoi_dd
0
81
reInventで学んだWebシステム運用のBadDayへの備え方 / How to Prepare for BadDay in Web System Operations Learned at reInvent
yayoi_dd
0
61
AWS reInventで感じた世界に見る生成AIの競争 / Competition in Generative AI as Seen Around the World at AWS reInvent
yayoi_dd
0
73
Other Decks in Technology
See All in Technology
Delegating the chores of authenticating users to Keycloak
ahus1
0
140
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
180
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
440
AI専用のリンターを作る #yumemi_patch
bengo4com
5
4.3k
OPENLOGI Company Profile for engineer
hr01
1
34k
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
9
4.2k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.7k
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
340
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
2
130
Core Audio tapを使ったリアルタイム音声処理のお話
yuta0306
0
190
PO初心者が考えた ”POらしさ”
nb_rady
0
210
SmartNewsにおける 1000+ノード規模 K8s基盤 でのコスト最適化 – Spot・Gravitonの大規模導入への挑戦
vsanna2
0
130
Featured
See All Featured
A better future with KSS
kneath
238
17k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Automating Front-end Workflow
addyosmani
1370
200k
GitHub's CSS Performance
jonrohan
1031
460k
Being A Developer After 40
akosma
90
590k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Docker and Python
trallard
44
3.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
950
Designing Experiences People Love
moore
142
24k
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がないか