When to use AWS Lambda
May 01, 2024

When to use AWS Lambda

Animesh Kumar | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User

Overall Satisfaction with AWS Lambda

We use AWS Lambda for running some periodic tasks. We've configured some triggers using AWS CloudWatch Alarms which trigger these Lambdas at certain intervals. This solves our business problem as we don't need to run a separate server for this neither it adds a load on any of the existing servers which are there to serve the requests. It only runs when there is a trigger and we only have to pay for the compute capacity we use.
  • No provisioning required - we don't have to pay anything upfront
  • Serverless deployment - it gets executed only when request comes and we pay only for the time the request is getting executed
  • Integrates well with AWS CloudWatch triggers so it is easy to setup scheduled tasks like cron jobs
  • As of now AWS Lambda just works as a function and all other deployment configurations are obscured. This doesn't let us integrate it with other debugging and monitoring tools like Sentry. If AWS Lambda can add support for some external integrations, that would be helpful.
  • Also, the lambda_handler function is passed with event and context arguments which can't be constructed locally so local development and testing of AWS Lambda code is difficult as of now. If AWS Lambda adds some support for local development, that would be great.
  • We were able to reduce cost as we didn't have to provision a new server like an EC2 instance but only paid for what we used
  • Also, because of integration with CloudWatch for triggers, it was easy to schedule the time of invocation and edit the time of invocation when needed
  • Because of integration with other AWS services, it is easy to access S3 storage or an RDS database

Do you think AWS Lambda delivers good value for the price?

Yes

Are you happy with AWS Lambda's feature set?

Yes

Did AWS Lambda live up to sales and marketing promises?

Yes

Did implementation of AWS Lambda go as expected?

Yes

Would you buy AWS Lambda again?

Yes

Scenarios where AWS Lambda is well suited: 1. When we need to run a periodic task few times in a day or every hour, we may deploy it on AWS Lambda so it would not increase load on our server which is handling client requests and at the same time we don't have to pay for AWS Lambda when it is not running. So, overall we only pay for few function invocations. 2. When some compute intensive processing is to be done but the number of requests per unit of time fluctuates. For example, we had deployed an AWS Lambda for processing images into different sizes and storing them on AWS S3 once user uploads them. Now, this is something that may happen few times every hour on a particular day or may not happen even once on other days. To handle this kind of tasks AWS Lambda is a better choice as we don't have to pay for the idle time of the server and also we don't have to worry about scaling when the load is high. Scenarios where AWS Lambda is not appropriate to use: 1. When we expect a large request volume continuously on the server. 2. When we don't want latency even in case of concurrent requests.

AWS Lambda Feature Ratings

Programming Language Diversity
10
Runtime API Authoring
9
Function/Database Integration
8
DevOps Stack Integration
5
Multiple Access Permission Levels (Create, Read, Delete)
9
Single Sign-On (SSO)
9
Dashboards
7
Standard reports
7
Custom reports
7