![Yan Cui](/img/default-banner.jpg)
- 148
- 199 408
Yan Cui
United Kingdom
เข้าร่วมเมื่อ 28 ธ.ค. 2007
👋 Hi, I’m an AWS Serverless Hero and independent consultant. I help people go faster for less using serverless technologies.
I have run production workloads at scale in AWS since 2009 and have a track record of improving businesses with technology. For instance, I led a small team that transformed a social network with serverless technologies in a matter of months. Feature delivery time went from months to days, and sometimes even hours. The system became more scalable, and reliable and was over 90% cheaper to run.
If you want to learn more about serverless and how it can accelerate your feature velocity and help you get more done faster and cheaper, then subscribe to my channel and check out my courses.
I have run production workloads at scale in AWS since 2009 and have a track record of improving businesses with technology. For instance, I led a small team that transformed a social network with serverless technologies in a matter of months. Feature delivery time went from months to days, and sometimes even hours. The system became more scalable, and reliable and was over 90% cheaper to run.
If you want to learn more about serverless and how it can accelerate your feature velocity and help you get more done faster and cheaper, then subscribe to my channel and check out my courses.
Rust with Lambda, easy-mode Rust & future of Middy | ft. Luciano Mammino
Ep #106 of the Real-World Serverless podcast
Thank you to Hookdeck for sponsoring this episode. If you're looking to level-up your event-driven architecture, then check out their serverless event gateway at hookdeck.com/theburningmonk and help support this channel.
AWS Serverless Hero Luciano Mammino shares the history of Middy, the popular middleware engine for AWS Lambda functions; why he's sold on writing Lambda functions in Rust and why you should too!
Links from the episode:
* Aws Bites channel th-cam.com/users/AWSBites
* Middy github.com/middyjs/middy
* How to sponsor Middy middy.js.org/docs/intro/sponsoring
* Crafting Lambda Functions in Rust rust-lambda.com
* Easy mode Rust llogiq.github.io/2024/03/28/easy.html
* Using Node.js ES modules and top-level await in AWS Lambda aws.amazon.com/blogs/compute/using-node-js-es-modules-and-top-level-await-in-aws-lambda/
* Using Middy with Typescript middy.js.org/docs/intro/typescript
* Ep97 on LLRT (the superfast JavaScript runtime for Lambda) th-cam.com/video/XQism0mZ4pE/w-d-xo.html
✅ Recommended playlists:
Real-World Serverless podcast on TH-cam
th-cam.com/video/jxL5Zk12JUE/w-d-xo.html
My BEST videos of 2024
th-cam.com/video/jxL5Zk12JUE/w-d-xo.html
🔔 For more free videos on TH-cam, subscribe to my channel:
youtube.com/@theburningmonk?sub_confirmation=1
💌 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.com/subscribe
📚 My courses 📚
theburningmonk.com/courses
👨🏫 My hands-on serverless workshop 👨🏫
productionreadyserverless.com
🌐 Find me here
Twitter: theburningmonk
LinkedIn: www.linkedin.com/in/theburningmonk
Blog: theburningmonk.com
Chapters:
0:00 Intro
1:38 Middy
18:18 Sponsor
19:45 Rust for Lambda
30:50 How to package & deploy Rust functions
36:05 Will there be a Middy for Rust?
39:24 AWS Heroes vs. Microsoft MVP programs
46:00 Outro
Thank you to Hookdeck for sponsoring this episode. If you're looking to level-up your event-driven architecture, then check out their serverless event gateway at hookdeck.com/theburningmonk and help support this channel.
AWS Serverless Hero Luciano Mammino shares the history of Middy, the popular middleware engine for AWS Lambda functions; why he's sold on writing Lambda functions in Rust and why you should too!
Links from the episode:
* Aws Bites channel th-cam.com/users/AWSBites
* Middy github.com/middyjs/middy
* How to sponsor Middy middy.js.org/docs/intro/sponsoring
* Crafting Lambda Functions in Rust rust-lambda.com
* Easy mode Rust llogiq.github.io/2024/03/28/easy.html
* Using Node.js ES modules and top-level await in AWS Lambda aws.amazon.com/blogs/compute/using-node-js-es-modules-and-top-level-await-in-aws-lambda/
* Using Middy with Typescript middy.js.org/docs/intro/typescript
* Ep97 on LLRT (the superfast JavaScript runtime for Lambda) th-cam.com/video/XQism0mZ4pE/w-d-xo.html
✅ Recommended playlists:
Real-World Serverless podcast on TH-cam
th-cam.com/video/jxL5Zk12JUE/w-d-xo.html
My BEST videos of 2024
th-cam.com/video/jxL5Zk12JUE/w-d-xo.html
🔔 For more free videos on TH-cam, subscribe to my channel:
youtube.com/@theburningmonk?sub_confirmation=1
💌 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.com/subscribe
📚 My courses 📚
theburningmonk.com/courses
👨🏫 My hands-on serverless workshop 👨🏫
productionreadyserverless.com
🌐 Find me here
Twitter: theburningmonk
LinkedIn: www.linkedin.com/in/theburningmonk
Blog: theburningmonk.com
Chapters:
0:00 Intro
1:38 Middy
18:18 Sponsor
19:45 Rust for Lambda
30:50 How to package & deploy Rust functions
36:05 Will there be a Middy for Rust?
39:24 AWS Heroes vs. Microsoft MVP programs
46:00 Outro
มุมมอง: 492
วีดีโอ
AWS veteran shares the secret to succeeding at AWS & the inception story of Cognito
มุมมอง 31621 วันที่ผ่านมา
Ep #105 of the Real-World Serverless podcast Thank you to Momento for supporting this episode. Momento's real-time data platform empowers developers to build innovative products faster and more reliably than ever before. Visit gomomento.co/theburningmonk for more information. David Behroozi, a 15-year Amazon veteran, tells us the inception story of Amazon Cognito and the cheat code for succeedi...
Baseline - is this new serverless development framework better than Amplify?
มุมมอง 508หลายเดือนก่อน
Ep #104 of the Real-World Serverless podcast Thank you to Hookdeck for sponsoring this episode. If you're looking to level-up your event-driven architecture, then check out their serverless event gateway at hookdeck.com/theburningmonk and help support this channel. Thomas Nixon, CTO of Baseline, shares stories from the trenches about the challenges of adopting serverless technologies. He gave u...
Community building, being an enabler, is serverless dead? - ft. Allen Helton | Real-World Serverless
มุมมอง 167หลายเดือนก่อน
Ep #103 of the Real-World Serverless podcast Thank you to Hookdeck for sponsoring this episode. If you're looking to level-up your event-driven architecture, then check out their serverless event gateway at hookdeck.com/theburningmonk and help support this channel. Allen Helton on being an enabler, building communities, and is serverless dead? Links from the episode: * Help Olivia's Fight Again...
Event-Driven Architecture: events vs commands
มุมมอง 8273 หลายเดือนก่อน
This is a preview lesson from my upcoming workshop, "Production-Ready Serverless". If you liked this, then please check out the full curriculum at productionreadyserverless.com. You can get 15% OFF with the code "TH-cam15" during checkout. Hope to see you there! In this video, let's discuss the difference between events and commands and their respective roles within an event-driven architecture...
Domain-Driven Design (DDD): Domain vs. Integration events
มุมมอง 1.2K3 หลายเดือนก่อน
This is a preview lesson from my upcoming workshop, "Production-Ready Serverless". If you liked this, then please check out the full curriculum at productionreadyserverless.com. You can get 15% OFF with the code "TH-cam15" during checkout. Hope to see you there! In this video, we will discuss the difference between domain events and integration events in Domain-Driven Design (DDD) and when to u...
EventBridge: should you have centralized event bus or one bus per service?
มุมมอง 7813 หลายเดือนก่อน
This is a preview lesson from my upcoming workshop, "Production-Ready Serverless". If you liked this, then please check out the full curriculum at productionreadyserverless.com. You can get 15% OFF with the code "TH-cam15" during checkout. Hope to see you there! In this video, we will discuss the pros and cons of the two most popular topologies for arranging event buses in a multi-account setup...
Peek behind the curtains of the AWS Heroes & Community Builders programmes
มุมมอง 3783 หลายเดือนก่อน
Ep #102 of the Real-World Serverless podcast Take a peek behind the AWS Heroes and Community Builders programmes with Farrah Campbell, who was a former AWS hero turned AWS employee. Nowadays, Farrah heads up both the AWS Heroes and Community Builders programmes. Links from the episode: * How to become an AWS hero by Danielle Heberling dev.to/aws-heroes/how-to-become-an-aws-hero-10h8 * S3 no lon...
AWS Lite, Web Components, Functionless and WASM with Brian LeRoux
มุมมอง 4403 หลายเดือนก่อน
Ep #101 of the Real-World Serverless podcast In this episode, I spoke with Brian LeRoux, co-founder of begin.com and creator of the Architect framework. Brian is also an AWS Serverless Hero and is currently working on enhance.dev, an HTML-first full-stack web framework. In a wide-ranging conversation, we discussed: * the Architect framework * Lambdalith vs. Single-purpose functions * Building a...
LocalStack v3 is here and it's kinda amazing!
มุมมอง 2.8K4 หลายเดือนก่อน
Ep #100 of the Real-World Serverless podcast In this episode, I spoke with Waldemar Hummer, founder and CTO of LocalStack. We discussed what's new in the latest version of LocalStack and highlighted some of the most interesting additions. One particular highlight for me is the ability to identify IAM permission errors between direct service integrations. For example, when an EventBridge pipe ca...
Azure Functions: DEEP DIVE with Microsoft MVP, Ian Griffiths
มุมมอง 1K4 หลายเดือนก่อน
Ep #99 of the Real-World Serverless podcast In this episode, I spoke with Ian Griffiths, a Technical Fellow at Endjin, a Microsoft MVP, and the author of O'Reilly's Programming C# 10.0. In this episode, we took a deep dive into Azure Functions, how it works and how it differs (significantly) from AWS Lambda. Links from the episode: * Bye bye Azure Functions, hello Azure Container Apps endjin.co...
How does LLRT differ from Bun, Nodejs and Deno?
มุมมอง 5665 หลายเดือนก่อน
The new Low Latency Runtime (LLRT) for Lambda is a game-changer. It's designed from the ground up to run in Lambda's constrained execution environment, unlike other JavaScript runtimes. ✅ Recommended playlists: Real-World Serverless podcast on TH-cam th-cam.com/video/jxL5Zk12JUE/w-d-xo.html My BEST videos of 2023 th-cam.com/video/jxL5Zk12JUE/w-d-xo.html 🔔 For more free videos on TH-cam, subscri...
How DAZN streams live sports to MILLIONS of concurrent viewers
มุมมอง 1.1K5 หลายเดือนก่อน
Ep #98 of the Real-World Serverless podcast In this episode, I spoke with Bob Hannent, the principal architect of DAZN's video playback and delivery system. This system is responsible for streaming live sporting events to millions of concurrent viewers. We discussed the many challenges that come with streaming live videos at scale. How to ensure uptime even when your CDN partners suffer an outa...
Why is AWS building a JavaScript runtime?
มุมมอง 2155 หลายเดือนก่อน
General-purpose runtimes such as Node.js and Bun are not optimal for a constrained execution environment such as Lambda, because they're not designed for these environments. The trade-offs and design decisions they make do not align with the constraints and needs of a Lambda customer. That's why, instead of trying to make the general-purpose runtime fit into Lambda, it's worth asking "what woul...
Why Fathom is running serverless at scale instead of containers
มุมมอง 2535 หลายเดือนก่อน
Fathom is running tens of thousands of Lambda concurrent executions at peak. At that scale, it would be cheaper to run them on containers, but the team would need to hire additional skillsets into the company at a great expense, which raises the total cost of ownership (TCO) of the solution. And for Fathom, the total cost of ownership is everything. ✅ Recommended playlists: Real-World Serverles...
What makes LLRT the FASTEST JavaScript runtime for Lambda?
มุมมอง 1.7K5 หลายเดือนก่อน
What makes LLRT the FASTEST JavaScript runtime for Lambda?
How Fathom saved $100,000 per year on their AWS bill!
มุมมอง 1.1K6 หลายเดือนก่อน
How Fathom saved $100,000 per year on their AWS bill!
How Dunelm went from on-prem to serverless while going faster
มุมมอง 4946 หลายเดือนก่อน
How Dunelm went from on-prem to serverless while going faster
AWS Lambda: why you shouldn't built a Lambdalith
มุมมอง 5136 หลายเดือนก่อน
AWS Lambda: why you shouldn't built a Lambdalith
AWS Lambda: optimizations for loading container images
มุมมอง 4657 หลายเดือนก่อน
AWS Lambda: optimizations for loading container images
Serverless Framework v4 with Austen Collins
มุมมอง 1.2K7 หลายเดือนก่อน
Serverless Framework v4 with Austen Collins
AWS CDK L1, L2 and L3 constructs explained
มุมมอง 8838 หลายเดือนก่อน
AWS CDK L1, L2 and L3 constructs explained
Sam Williams is building AI-powered apps with serverless
มุมมอง 5638 หลายเดือนก่อน
Sam Williams is building AI-powered apps with serverless
Rise of the AI Engineer with Shawn Wang
มุมมอง 2K8 หลายเดือนก่อน
Rise of the AI Engineer with Shawn Wang
AWS Lambda: TOP 5 cold start mistakes
มุมมอง 1.3K8 หลายเดือนก่อน
AWS Lambda: TOP 5 cold start mistakes
AWS CDK: problem with creating reusable L3 constructs
มุมมอง 4148 หลายเดือนก่อน
AWS CDK: problem with creating reusable L3 constructs
Father of DevOps on the Future of AI and DevOps
มุมมอง 2.3K8 หลายเดือนก่อน
Father of DevOps on the Future of AI and DevOps
The hardest part of CDK, according to an AWS DevTools Hero
มุมมอง 5908 หลายเดือนก่อน
The hardest part of CDK, according to an AWS DevTools Hero
He built a hotel booking system that costs $0.82/month to run
มุมมอง 2.3K9 หลายเดือนก่อน
He built a hotel booking system that costs $0.82/month to run
Thank you!
I recently switched from Node to Go and noticed huge improvements in cold start time. However, once I need to access other services, say DynamoDB, through SSL/TLS the few milliseconds saved from moving from Go to Rust seems negligible. The initial SSL/TLS handshake in my case take at least 500-600ms. Do you have any practical tips to speed up this handshake process in Lambda functions? Not like adding AWS secret keys to environment configuration. Thanks!
Of course I know I can increase the memory size. Is there other option?
A couple of ideas: 1. use RustTLS (rather than OpenSSL) when possible (AFAIK it's enabled by default in the AWS SDK, but if you do HTTP requests to other services using a client like Reqwest you'll need to explicitly enable RusTLS) 2. Make sure your clients are initialized in the `main` function and not in the handler. This way you'll establish the connection only once at cold start rather than for every single event being processed. I hope this helps, but let me know if you discover other optimizations
It depends on your software architecture, the teams characteristics/culture, the product. In some cases the test pyramid is more adequate (even the inverted pyramid). But I totally agree on the ultimate lesson here: write tests that provide value, no more, no less
your course is really expensive for Indian peoles.
As always, great content. @ 36 mins in, there is a discussion around Amplify (I'd given up on Amplify years ago) and you mentioned Gen2 making Amplify more accessible. Have you found time to see if Gen2 is flexible, like baseline?
The most unexpected thing with CDK is that you are not always getting what you have described in code. For instance, an extra lambda function when you set a retention period.
you explained this topic better than aws docs
haha, thank you!
What if i have a aws timestream database ingested externally? how can i subscribe any new data inserted to the database?
AFAIK timestream doesn't give you a data change stream that you can subscribe to, so you'd have to create your own. How are you getting the data that you write to Tiemstream? Do you get them as a S3 file?
@@theburningmonk i have aws iot topic captured by a kinesis data stream. The kinesis data stream trigger a lambda function which is responsible for dumping data into timestream database.
anything is better than amplify. It sucks and i hate it. love ur vids
Thanks! I've been stung by Amplify CLI too, but I heard gen 2 is much better. I haven't tried it out myself yet, so I will reserve my opinions for now. What would you say were the biggest problems with Amplify CLI?
a great watch. I am definitely interested in checking this thing out
Thanks, glad you liked it!
Excellent video, thanks for sharing
Thank you, glad you liked it!
Hi is there a chance to get only Step Function testing module from your course?
cheers
Are Devops engineers going to loose jobs to AI ? Please let me know
this is great! thanks
Glad you like it!
Farrah rocks!
Agree :-)
Nice one, Yan! Succinct, simple language, and straight to the point. Very good. Thanks for recording and sharing!
Thank you :-) Glad you liked it!
Very good explanation!
Thank you :-)
How is Command is different from Lambda Invoke? You can wait for response from lambda invoke
Conceptually they're different things. Events and commands are used to model your system's behaviour and their interaction, and a Lambda function is used to carry out some business logic in response to an invocation request. In your example, the invocation event might be a "command", if the event carries a message that requests some action to be performed. But Lambda functions can be invoked in response to an event too. Commands often follow a request & response pattern, but not all request & response communications are related to processing commands.
Thank you for the video, very instructive and clear.
Glad you enjoyed it!
awesome content
thank you, glad you liked it!
Having been in the Community Builders for 5 years now, I think it's an incredible program and something that has helped me connect with other people in the space. It's helped me make better content and get insight into features that are in the pipeline. I recommend applying to anyone who creates any kind of content around AWS
Awesome explanation
Glad you liked it
Hello AWS Heroes!
good information, thanks for this interesting video
Thank you, glad you liked it!
Farah is an amazing human being. Being an AWS Hero is one of my career goal. Been in community builder program for 4th year now :)
She totally is!
legends
thanks!
Thanks for this amazing podcast!
Glad you liked it!
Feedback: Would be awesome, if the 'next lesson' could be linked in the description.
This is a preview lessons from my course, the "next lesson" it refers to is part of the course but I haven't released it on TH-cam. I've added a link to the full course in the description instead.
thank you very much!
35:39
This was an incredible podcast. Thank you Yan for driving such an awesome conversation! and Bob for the deep dive behind the scenes at DAZN.
Thanks Khawaja! It was one of my fav episodes as well
A problem I often face is too many limitations, which requires another service to overcome that limitation. Soon, you'll have a porridge of serverless services.
Nice video - but it would be good to go deeper into the types of stacks that use these services.
Is there blog/medium page that highlights these best practices?
Really enjoyed this. Lots of invaluable insights into Azure Functions borne of real-world experience. Particular highlights for me were ~11:55 discussion on the pricing plans, and then at ~18:15 about the nature of scale-out and how this can affect costs; ~40:00 micro-VMs like Firecracker which I had never heard of, and then the challenges of using Azure Functions at ~45:00 including the impact of dependencies on other parts of the Azure platform. Thanks Yan and Ian for a very informative chat.
Thank you for the summary and glad you enjoyed it!
Best video on concurrency
Thank you!
Very cool presentation. LocalStack looks neat for those who are vendor locked. My hot take is, don't get vendor locked in the first place. Choose OSS tech that you can host yourself (and run locally) or that cloud providers offer support for. If you have to use a cloud specific API, use interfaces for adaptability and build software that is oblivious to its implementation.
For a more nuanced discussion discussion about lock-in, have a watch of Gregor Hohpe's talk about the different dimensions of "lock-in" and understanding the cost of avoiding "lock-in" th-cam.com/video/Ud9h1hJgoKk/w-d-xo.html He also has a good article too "Don't get locked up into avoiding lock-in" if you're interested in a different perspective. martinfowler.com/articles/oss-lockin.html
Didn’t know it didn’t had a free tier…
I think you can still use the open source version, right?
Thank you for these!
My pleasure!
Hi Yan, Any plans to cover Localstack in your upcoming course?
I'm thinking of doing it for the Production-Ready Serverless workshop (productionreadyserverless.com/) in May, but it'd be pretty high level though. Because a) I haven't used it much myself, and b) some of the new features like IAM enforcement is only available on the paid plans (there is a 14 day free trial, but that's not enough for the length of the workshop)
Make a course?
maybe, I haven't used it enough myself though, so might not be the best person to do it
@@theburningmonk noo no, we only trust you to teach this, WTB course
Thank you
Well said @BobHannet. Was an amazing project you guys put up to stream DAZN to millions over the last 7-8years :) . And was also great to be part of the side , Data family of it :)
Fascinating interview!
thanks, glad you liked it!
Maybe they'll secure their CDN one day.
Tell me more?
What about ECS with Fargate? This is fully serverless as well and completely managed by AWS
I like Ben Kehoe's definition of serverless being a spectrum: ben11kehoe.medium.com/the-serverless-spectrum-147b02cb2292 with that in mind, Fargate is more serverless than EC2, but not as serverless as Lambda because it doesn't scale to 0 and does not offer usage-based pricing, two of the litmus tests for "fully serverless" services: www.gomomento.com/blog/fighting-off-fake-serverless-bandits-with-the-true-definition-of-serverless That's not to say that Fargate might not be a bad option for Fathom, but it's definitely not as hands-off as Lambda, which is what the Fathom team is looking for from what I gathered.
It was good to chat with you Yan!
Was great to have you on the show, loved the insights into the streaming side of things!
Thank you it’s nice to have advanced topics like this discussed
Glad you liked it. It's one of my fav episodes so far as well. There's a lot of really interesting technical challenges that goes into video streaming at scale, it's under-appreciated
@Bluescape we used step functions to build AMIs hardened for govcloud usage. The first step in the state machine was to check if AWS had published a new AMI to begin with, otherwise quit, and it was nice to see this logic execute as state transitions ... Overall we had about 20 state transitions to build an AMI. So the cost per AMI was $0.005. since our step function ran once per week in 2 environments, overall cost was $0.01 per week or 52c per year ....