65. Solving SQS and Lambda concurrency problems

Описание к видео 65. Solving SQS and Lambda concurrency problems

In this episode of the AWS Bites Podcast, we dive into the serverless pattern of using AWS Lambda together with SQS. We explain the basics of both Lambda and SQS for those who may not be familiar with them. We talk about how we use Lambda, a Function as a Service offering in AWS, to write our own functions and have AWS run them in response to certain events. And we also discuss SQS, a scalable and managed queuing system available on AWS, which we use to offload work to background workers.

We delve into how the two services work together through the use of "Event Source Mapping" in Lambda, which polls our SQS queue and makes synchronous Lambda invocation requests when messages are available. We also mention how this feature provides us with the ability to control batch size and window, as well as specify filters to save execution time and cost. But we also share one of the limitations we faced when using SQS and Lambda together which was the lack of control over concurrency and the potential for excessive throttling.

But recently, AWS has released a new feature called "SQS maximum concurrency support" which allows us to specify a maximum number of invocations for an Event Source Mapping. This solves the problem of excessive throttling and eliminates the need to use reserved concurrency. It also allows for more control over concurrency when using multiple Event Source Mappings with the same function. We explain how this new feature has improved our workflow and made it much more efficient.


💰 SPONSORS 💰

AWS Bites is sponsored by fourTheorem (https://fourtheorem.com/). fourTheorem is an AWS Consulting Partner offering training, cloud migration, and modern application architecture.


🔖 Chapters:

00:00 Intro
01:10 What is AWS Lambda?
02:25 What is SQS?
05:15 How do Lambda and SQS work together?
08:09 The pain of using Lambda and SQS together...
09:30 How the Event Source Mapping works
10:53 How can the maximum concurrency feature help
12:58 Other improvements we would like to see
14:18 Consuming messages in batch with SQS and Lambda
15:07 Additional resources
15:47 Closing

In this episode, we mentioned the following resources:

AWS Lambda: https://aws.amazon.com/lambda/
Amazon SQS: https://aws.amazon.com/sqs/
Series of blog posts by Zac Charles covering the original problem and the solution in detail:   / does-maximum-concurrency-solve-the-lambda-...  
Official AWS blog post with the announcement of the maximum concurrency feature: https://aws.amazon.com/blogs/compute/...
Our previous episode on SQS: https://awsbites.com/22-what-do-you-n...
Our series on AWS event services:    • Event Services (SQS, SNS, EventBridge...  


You can listen to AWS Bites wherever you get your podcasts:
Apple Podcasts: https://podcasts.apple.com/us/podcast...
Spotify: https://open.spotify.com/show/3Lh7Pzq...
Google: https://podcasts.google.com/feed/aHR0...
Breaker: https://www.breaker.audio/aws-bites
RSS: ​​https://anchor.fm/s/6a3312a0/podcast/rss

Do you have any AWS questions you would like us to address?
Leave a comment here or connect with us on Twitter:
  / eoins  
  / loige  

#AWS #lambda #sqs

Комментарии

Информация по комментариям в разработке