Тёмный
No video :(

AWS Lambda: monolithic vs single-purpose functions 

Yan Cui
Подписаться 6 тыс.
Просмотров 1,9 тыс.
50% 1

Heitor Lessa (Principal Solution Architect at AWS) on why he prefers monolithic Lambda functions (aka, fat functions) these days and what factors you should consider.
This is a clip from episode #82 of the Real-World Serverless podcast. You can watch the full episode here: • Big things are coming ...
✅ Recommended playlists:
Real-World Serverless podcast on RU-vid
• Is AWS Bedrock the Ope...
Learn to build Production-Ready Serverless Applications
• AWS Lambda: When to us...
🔔 For more free videos on RU-vid, subscribe to my channel:
youtube.com/@t...
💌 If you're hungry for more insights, best practices, and tips on building serverless applications, make sure to subscribe to my weekly newsletter and elevate your serverless game!
theburningmonk...
📚 My courses 📚
theburningmonk...
👨‍🏫 My hands-on serverless workshop 👨‍🏫
productionread...
🌐 Find me here
Twitter: / theburningmonk
LinkedIn: / theburningmonk
Blog: theburningmonk.com

Опубликовано:

 

29 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 13   
@artemarkhipov1534
@artemarkhipov1534 9 месяцев назад
Definitely makes sense to me to start from a fat one. The main thing is to get it working (!) and only then you start thinking about optimisations a what to put in separate.
@theburningmonk
@theburningmonk 9 месяцев назад
An important caveat to add is what Heitor said about "meeting people where they are". For me, starting with single-purpose functions and getting it to work is not hard. In fact, I find it easier to get things to work when I'm starting with just a single function, doing a single thing. Get it to work, then the next thing. But I take Heitor's point that many of his customers are not seasoned AWS user and many are probably working with Lambda for the first time. And getting what they have already to work in Lambda is a good first step, or doing something they're familiar with (ie. building a flask app) in a different environment (ie. in a Lambda function) is a great way to minimize risk and reduce the no. of challenges you take on in one go. That's also the advice I usually give clients who are new to AWS and serverless, to get them to change one thing they do at once, so they don't get overwhelmed by all these changes in one go. For things that I develop myself, then it's a totally different ball game!
@artemarkhipov1534
@artemarkhipov1534 9 месяцев назад
@@theburningmonk agree! I've probably made a mistake in what I wanted to say. When clients come with developed on-premise or other server(full) solution - that is easier to move them to serverless starting with fat functions as it usually allows them to move whole modules. But of course, if our client is a relatively young startup - then I'd proceed with a more granular approach, where functions have much much less responsibilities and permissions.
@AskarIbragimov
@AskarIbragimov 9 месяцев назад
you might not be given time and resources to refactor it later.
@ValeriyLysenco
@ValeriyLysenco 9 месяцев назад
"I prefer" sounds a little weird to me, does he work alone? In my opinion there should be no place for "I like", "I prefer", "I used to", the only thing to drive the decision must be common sense backed by set of strong arguments without any personal preferences. So whether to go with `fat` or `slim` lambdas must be really driven by problem it must be solving and no personal beliefs.
@theburningmonk
@theburningmonk 9 месяцев назад
While I agree with the evidence-backed argument, I don't see anything wrong with expressing one's personal opinion on something, so long you can back it up with a sound argument and/or evidence. Was there anything that Heitor said in particular that you feel he didn't back up with a good reasoning?
@ValeriyLysenco
@ValeriyLysenco 9 месяцев назад
@@theburningmonk I think the reasons for going monolith are too personal and not backed up strong enough (maybe I just failed to understand it). Normally monolith is a pile of spaghetti or (as majority monolith advocates say) "good modular" monolith. As nobody wants a pile of spaghetti lets pick second route and we will end up with "good modular" monolith which already can be deployed as set of lambdas with granular permissions and what is not less important - reasonable resources setup (maybe after power-tuning to find the best one). So what's the point in going fat lambdas then?
@theburningmonk
@theburningmonk 9 месяцев назад
@@ValeriyLysencoah I see. Maybe it wasn't called out explicitly, but it was (from my recollection) that, fat lambda meets people where they are in their knowledge level. The other reason that was called out explicitly is that some vendor charge by resource, ie. datadog. So it forces you to consolidate into small no. of functions to save on cost. The other reason he mentioned was specific to Python and packaging. That one, you can definitely solve without resolving to fat functions - both Serverless framework and CDK has solution for this. But maybe it's another argument based on "meeting people where they are"
@ValeriyLysenco
@ValeriyLysenco 9 месяцев назад
@@theburningmonk Good point. To me datadog billing issue is a matter of solution design, logs can be published by dedicated logging lambda or logging service, but I do agree here also, this solution needs to be built and it's time and money, and knowledge, so fat lambda will be really effort free solution for any team.
@theburningmonk
@theburningmonk 9 месяцев назад
@@ValeriyLysencoI think the specific billing issue is not with Lambda logs, but for their APM solution (basically gives you tracing and cold start analysis, etc.). But that billing model is maddening, I wish they'd change it... Unfortunately, the developers making the system design might not have the final say on the observability provider, so you have to make compromises in your design so not run up a huge bill with datadog.
@MuratKeremOzcan
@MuratKeremOzcan 9 месяцев назад
LeBlanc's Law says later is never
@theburningmonk
@theburningmonk 9 месяцев назад
lol there’s nothing more permanent than a temporary solution
Далее
AWS Lambda: TOP 5 cold start mistakes
8:12
Просмотров 1,2 тыс.
Should You Run An Entire Web Application in AWS Lambda?
13:19
Can You Bend This Bar?
01:00
Просмотров 5 млн
Кого из блогеров узнали?
00:10
Просмотров 661 тыс.
The Best Software Engineering Advice | Prime Reacts
55:05
The Big Headless CMS Lie (James Mikrut)
18:14
Просмотров 56 тыс.
100+ Docker Concepts you Need to Know
8:28
Просмотров 932 тыс.
Monolith vs Microservices on AWS
12:59
Просмотров 12 тыс.
Monolith vs Microservices vs Serverless
23:05
Просмотров 77 тыс.
Serverless Doesn't Make Sense
10:13
Просмотров 365 тыс.