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
34
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
SIEM on Amazon OpenSearchで得たOSSを利用する上での教訓/Lessons learned when using OSS
yayoi_dd
1
31
RDS Aurora MySQLを用いたデータ連携でやらかした話/Story about when linking data using RDS Aurora MySQL
yayoi_dd
1
45
ライフサイクル考えられていますか/Do you think about lifecycle
yayoi_dd
1
38
プロンプトエンジニアリングに触れてみよう / Let's try prompt engineering!
yayoi_dd
1
2.5k
ChatGPTによるお手軽データ分析 / Easy data analysis with ChatGPT
yayoi_dd
1
2.4k
ChatGPTでお手軽エンジニアライフハック / Easy engineer life hacks with ChatGPT
yayoi_dd
1
2.4k
ChatGPT APIを使ったツール作成日記 / Diary of tool creation using ChatGPT API
yayoi_dd
1
2.4k
スクラムに出会って「できた」を実感できるようになってきた話 / Scrum makes me feel like I can do it
yayoi_dd
2
2.6k
CDKでの自動構築が超簡単で感動した話(超初心者向け) / Automated construction using CDK was easy, impressed
yayoi_dd
1
2.4k
Other Decks in Technology
See All in Technology
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
100
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
440
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
Opcodeを読んでいたら何故かphp-srcを読んでいた話
murashotaro
0
110
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
150
MLOps の現場から
asei
6
640
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
1
1.3k
ガバメントクラウドのセキュリティ対策事例について
fujisawaryohei
0
530
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
170
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
260
サーバレスアプリ開発者向けアップデートをキャッチアップしてきた #AWSreInvent #regrowth_fuk
drumnistnakano
0
190
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Practical Orchestrator
shlominoach
186
10k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Done Done
chrislema
181
16k
How GitHub (no longer) Works
holman
311
140k
Side Projects
sachag
452
42k
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がないか