Skip to main content
TrustRadius
AWS Lambda

AWS Lambda

Overview

What is AWS Lambda?

AWS Lambda is a serverless computing platform that lets users run code without provisioning or managing servers. With Lambda, users can run code for virtually any type of app or backend service—all with zero administration. It takes of requirements to…

Read more
Recent Reviews

AWS Lambda for developers

9 out of 10
May 12, 2021
AWS Lambda serves various purpose accross teams
1. We mainly use AWS Lambda when we have very short time to productionise code and have …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Return to navigation

Pricing

View all pricing

128 MB

$0.0000000021

Cloud
Per 1 ms

1024 MB

$0.0000000167

Cloud
Per 1 ms

10240 MB

$0.0000001667

Cloud
Per 1 ms

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services
Return to navigation

Product Demos

AWS Lambda | What is AWS Lambda | AWS Lambda Tutorial for Beginners | Intellipaat

YouTube
Return to navigation

Product Details

What is AWS Lambda?

AWS Lambda is a serverless computing platform that lets developers run code without provisioning or managing servers. With Lambda, users can run code for virtually any type of app or backend service—all with zero administration. It takes care of requirements to run and scale code with high availability. Users pay only for the compute time they consume—there is no charge when their code is not running.

Developers uploading to Lambda don’t have to deal with their code’s environment. It’s a “serverless” service which lets outside code or events invoke functions. Lambda doesn’t store data, but it allows access to other services which do. Users can set up their code to automatically trigger from other AWS services or call it directly from any web or mobile app.

AWS Lambda Technical Details

Deployment TypesSoftware as a Service (SaaS), Cloud, or Web-Based
Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

AWS Lambda is a serverless computing platform that lets users run code without provisioning or managing servers. With Lambda, users can run code for virtually any type of app or backend service—all with zero administration. It takes of requirements to run and scale code with high availability.

Reviewers rate Usability highest, with a score of 9.

The most common users of AWS Lambda are from Mid-sized Companies (51-1,000 employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(352)

Attribute Ratings

Reviews

(1-25 of 45)
Companies can't remove reviews or game the system. Here's why
Nikhil Singh | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
I used AWS lambda in one of project which was developed by company I am currently in. My current company is AWS partner network accredited. While developing project, our company tries to make offer for AWS lambda as it is cost efficient compared to EC2 instance or any other compute service. Business problems are related to what clients want in a smaller budget. AWS lambda is considered as server-less compute service and helps to deliver solution much faster than any other computer service.
  • Image compression on the go
  • Supports multiple programming language which can trigger lambda using API
  • Event driven
  • Platform as service, don't need to configure underlying hardware or operating system
  • Can handle higher number of events triggering, easily scalable.
  • Cost efficient
  • Environment is something which we can't control. It can be disadvantage at some point of time.
  • Time limit for function to execute, 3 sec as default upto 15 minutes maximum. Need to a lot of time to making function more efficient to execute in given time frame.
  • If function code file is above 5mb, lambda's ide doesn't support editing on go. You need to upload another zip file with newly updated code. It's quite frustrating.
Compressing image while uploading it to S3 bucket can be easily done using lambda. While if your workload require lot of execution time or there is large amount of data to be processed, also workload where tweaking environment to suit workload, lambda can be less appropriate. Instead other computer service like EC2 and elastic beanstalk can be well suited for such task.
Score 9 out of 10
Vetted Review
Verified User
-AWS Lambda is being used for cron job with AWS Event bridge.
-AWS Lambda can be also be used as a serverless function with api gateway.
  • Speed processing
  • Computing concurrency
  • service to service communication
  • In Lambda if a version of the language is deprecated then it should have provide an upload or modified function.
  • It has a limit of 262 mb folder can be uploaded in AWS Lambda.
-AWS Lambda can be used for cron job with AWS EventBridge.
-When we use AWS Lambda use with API Gateway to only transport data to another service without any business logic.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is widely used in our organization by a number of development teams. It is used in both one-off tasks and coordinated workflows. My team is responsible for infrastructure management, and there are many use cases for which we have opted to use AWS Lambda. AWS Lambda is often a good choice for us when we do not need a standing compute resource.
  • Broad support for different language runtimes: Python, Node.js, C#, Java, Golang, Powershell, Ruby
  • Save money on compute resources by paying by request volume and memory used/time
  • Integrates terrifically with a number of other AWS resources
  • Cold start--you have to account for the runtime environment being spun up every time; for a heavy operation, that can increase runtime duration and, in turn, cost
  • You have to consider networking, which is also true of other compute resources, technically
I would recommend using AWS Lambda when you have one-off tasks that can be accomplished with a single function and do not require a persistent, constantly running compute resource. Some example use cases include file or image processing, data analytics (you might have DynamoDB stream updates to AWS Lambda for processing), in conjunction with API Gateway as a backend.
I would not recommend using AWS Lambda when your Lambda function has potentially long-running, asynchronous calls involved (e.g., calling out to a service hosted in another cloud platform). This can drive up execution time and, in turn, cost. While Lambda layers allow you to share code between Lambda functions, I would not recommend AWS Lambda for cases where there are high degrees of interdependence between the Lambdas. I think that Lambdas work better when considered isolated.
Ojas Elawadhi | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
[AWS Lambda] is being used in specific departments of the company as and when we require it because cost is involved depending upon usage. This can be integrated with multiple AWS tools like redshift, S3 and many other services that helps in easy processing of data. This has positively impacted our maintenance cost.
  • This can be incredibly cheap as you use it whenever you want.
  • This is heavily scalable
  • You can Swiftly deploy and execute the code
  • The documentation is not very clear and could be made more informative
  • Plugins are very limited
  • Logs are very hard to debug
[AWS Lambda] is very well suited for the projects that doesn't have any infra but needs it where short running processes are required. But if your application need to run continuously than this might not be the very apt tool for you.
June 03, 2021

Power of lambda

Akash Singla | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Process terabytes of data broken down into small files of 70MB each. Our Lambdas spin an instance for each file and process it within 30 seconds. This way the entire batch of 320,000 files is finished in about 2 hours.
  • Execute small tasks quickly.
  • Monitoring can be easy.
  • Integration with s3 and SNS is a boon.
  • Trigger quickly and easily based on events.
  • Deployment via cloud formation.
  • Importing libraries.
  • Execution time could be longer.
Process large datasets where bigger files are broken into smaller ones. Executing step functions. Submitting requests for Sagemaker pipeline. Submitting queries to Redshift data API. Managing dynamodb records (read-write).
Erlon Sousa Pinheiro | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We are using AWS Lambda as [much as] we can and when is feasible. When I say feasible, I mean we should observe AWS Lambda limits and costs because even [with] AWS Lambda being an amazing product, you need to be careful with costs since every call to a function will charge you.
  • Triggers from state changes on other AWS technologies.
  • Automate process when someone interacts with AWS S3.
  • Create functions to keep compliance aspects.
  • AWS needs to increase timeout limits for Lambda functions.
  • More templates would be welcome.
  • A better and cheaper charge policy.
I believe the main concern is about costs. If your function calls generates profit, no problem with the amount, as more [is] better. But if this is not the case and your user case trends to grow without associate profit, maybe by provisioning dedicated resources (EC2 instances for example) to run your functions will hurt less in your wallet.
Score 9 out of 10
Vetted Review
Verified User
AWS Lambda serves various purpose accross teams
1. We mainly use AWS Lambda when we have very short time to productionise code and have little time to worry about infrastructure.
2. AWS Lambda takes care of scaling and dynamic increase in inflow of traffic.

  • Scalable
  • Less Infra headaches
  • Just write code and don’t worry about devops
  • Less plugins
  • No integration with springboot
  • Need to provide all library and no management
Well suited:
1. when we need to worry about time to market and we don’t have infra defined.

Not suited:
1. Not suited for Business Client transactions as its server are located out of Switzerland and hence country laws are different
Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is mostly in use by our DevOps department with Web portals testing and implementation to support our projects on cloud. We mostly use HTML conversion Lambda functions with our conversion services. It is greatly helpfil to reduce cost of usage and improve integration with Simple Notification Service. Also we work on smart recognition of documents buckets.
  • Serverless compute lets you run code without provisioning and managing
  • It is helpful to reduce costs and administrative loads for web development or mobile apps
  • Easy to manage the compute resources on AWS
  • Better integration with containers
  • API Runtime should be improved with support and integration for other program languages
  • Improves documentation in part of security and network port usage
  • Limits programmers to 1,000 concurrent executions
Working with Web and mobile apps well suited for Lambda. It provides a clear support path and improvement. Also it helps to reduce cost and accelerate speed of reaction on changes.

A sess appropriate scenario would be when CIO push to implement new technology and services without clear understanding of the results and project needs.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
At my current place of work as well as for personal projects AWS Lamba is currently used for many different projects. A few examples are "image resizers", "data processing" and invalidating cache from a 3rd party webhook. It allows for quick, easy, and inexpensive setup and maintenance especially using 3rd party libraries like "Serverless".
  • Easy to use
  • Performant and reliable
  • Can be incredibly cheap
  • A bit of a learning curve when first starting out
  • A refreshed UI to manage AWS Lambda
A great example of using AWS Lambda is when your application needs to be able to render images for the user and have those images be resized and optimized on load. Using AWS Lambda you can create endpoints with a minimal amount of code that allows your applications to request the images and use query parameters to declare the height and width etc.
Sai Sreenivas Addepalli | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda to upload data from API to store in AWS. We have also integrated it with AWS DynamoDB, Redshift, S3, Kinesis, MSK, and many other AWS Services for further processing of the stored data. It is being used by a single department. It reduces the maintenance cost and makes development easy. Makes it easy to address any issues in the APIs without any problem to the other Lambda.
  • Serverless Framework. Easy to develop and test in local environment
  • Easy to detect issues. As it does not interlink to any other lambda.
  • There are shared layers in Lambda that can provide common code to be shared between Lambda. Helps in Avoiding the same code to be written multiple times.
  • Difficult to identify all permission issues at once. It would be easier if we can get a list of all permissions which are required to further proceed.
  • Lambda output to trigger more Services. Currently, it supports only 2-3 Services.
  • It would be great if AWS can handle the Lambda cold starts internally.
AWS Lambda is most suited as a Serverless methodology. When you do not want to handle the software and only want to work on logic and code development, AWS Lambda is the best option. You can also trigger AWS Lambda from many AWS services like when a new row is added into DynamoDB or when a new file is uploaded to S3 or also when you want to execute Lambda once a day or at a specific intervals(cron jobs).
Michael Jenkins | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
My team uses AWS Lambda in two primary ways: as a back end service and as middle-ware for log processing. As a backend, Lambda provides the compute for APIs fronted by AWS API Gateway or one-off tasks that can be handled in the cloud by a small piece of code. As a middle-ware for log processing, Lambda processes logs ingested by AWS Kenesis by feeding them into AWS Cloudwatch and third-party logging services.

Lambda provides an interface to managed compute resources without the overhead of the team having to mange servers or other resources.
  • Lambda provides multiple methods for triggering functions, this includes AWS resources and services and external triggers like APIs and CLI calls.
  • The compute provided my Lambda is largely hands off for operations teams. Once the function is deployed, the management overhead is minimal since there are no servers to maintain.
  • Lambda's pricing can be very cost effective given that users are only charged for the time the function runs and associated costs like network or storage if those are used. A function that executes quickly and is not called often can cost next to nothing.
  • Developing test cases for Lambda functions can be difficult. For functions that require some sort of input it can be tough to develop the proper payload and event for a test.
  • For the uninitiated, deploying functions with Infrastructure as Code tools can be a challenging undertaking.
  • Logging the output of a function feels disjointed from running the function in the console. A tighter integration with operational logging would be appreciated, perhaps being able to view function logs from the Lambda console instead of having to navigate over to CloudWatch.
  • Sometimes its difficult to determine the correct permissions needed for Lambda execution from other AWS services.
I would definitely recommend using Lambda for short-running, event-triggered processes that are dedicated to a single function. This could be for one-off processing or intermediate tasks between other resources like objects stored in buckets and queues for processing those objects. Also, since Lambda executions can be scheduled, processes that need to happen on regular intervals can be implemented with Lambda as well.
I would not recommend using Lambda for anything that needs to run longer than a few seconds. Long running processes like ETL jobs or intensive computations may be better suited for step functions, batch jobs, or even a server based approach.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda to help us automate the process of start/stop EC2 instances in AWS. We use it in infrasctructure but it affects the whole organization and most of our internal servers and customer servers are in AWS. With this automation, we cut our cost by 35% which is a very significant amount for a small company.
  • Flexible. You can use it with many programming languages.
  • Easy. It's all configurable and as soon as you understand how it works it becomes very easy to maintain.
  • The integration with other AWS tools helps a lot the automation of tasks.
  • In the beginning, I think the documentation is not very informative so you have to look at user examples online.
The main area in my point of view is the automation reduction of costs. You can program and use Lambda to execute several tasks based in several types of events like logs, schedules, and output from other AWS tools. With the AWS API, you can do almost anything you want and your function will use only the needed resource (memory, cpu) so it is optimized.
February 07, 2020

AWS Lambda rocks

Score 7 out of 10
Vetted Review
Verified User
Incentivized
We use Lambda to manage workloads integrated with our API Gateway.
  • Simplicity
  • Security
  • Scalability
  • API calls
I think it works really well for managing workloads without the need to manage the underneath infrastructure.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Our university department is responsible for several web applications on campus that support student success, including providing online services for students directly, as well as supporting workflows and activities of other departments and divisions. As we move more and more of our applications into the AWS cloud, we have found Lambda to be a great way to simplify some of our web services and "housekeeping" processes; the fact that we're only charged for Lambda function calls, and not for the infrastructure which supports Lambda, helps us save on hosting costs, as well!
  • AWS Lambda is a welcoming platform, supporting several languages, including Java, Go, PowerShell, Node.js, C#, Python, and Ruby. And if you need to deploy a Lambda function in another language, AWS offers a Runtime API for integration.
  • We really appreciate how AWS Lambda is always-on for our functions, with only a brief "cold-start" waiting period the first time a function is called after being dormant.
  • In addition to only generating costs when it's actually being used, AWS Lambda really puts the "serverless" in serverless architecture, offering turnkey scaleability and high availability for our code with zero effort on our part.
  • Putting a significant portion of your codebase into AWS Lambda and taking advantage of the high level of integration with other AWS services comes with the risk of vendor lock-in.
  • While the AWS Lambda environment is "not your problem," it's also not at your disposal to extend or modify, nor does it preserve state between function executions.
  • AWS Lambda functions are subject to strict time limitations, and will be aborted if they exceed five minutes of execution time. This can be a problem for some longer-running tasks that are otherwise well-suited to serverless delivery.
AWS Lambda is a great way to deploy smaller-scale data synchronization jobs and other "housekeeping" routines that don't require preservation of state. We use it to build API gateway tools used by our larger applications (many of which are hosted on AWS EC2 instances) and it's a perfect fit.

If you have complicated workflows that run a long time, or require state to be saved between function calls, AWS Lambda is probably not the right choice for a serverless solution.
November 16, 2019

AWS Lambda for Education

Score 9 out of 10
Vetted Review
Verified User
Incentivized
I've used AWS Lambda to create Alexa skills. I write articles about these skills and teach university students to create skills.
  • Rapid deployment of code.
  • Rapid execution of code.
  • Cost-effective use of the cloud.
  • The setup pages for AWS Lambda could be more intuitive.
  • AWS Lambda could have better Java integration.
AWS Lambda is very well suited to the scenario in which I use it; namely, Alexa skills. To respond to an Alexa skill request, it would be inefficient to spin up a server. For applications that run continuously and are not event-driven, AWS Lambda is not well-suited.
October 30, 2019

AWS Lambda Review

Score 9 out of 10
Vetted Review
Verified User
Incentivized
Monitoring Usecase:
In the organization, we have got a need to increase the monitoring and availability of the systems, because of which we have created several scripts that run on a server for every 15 mins to extract data from one system and store it in a database. It was working fine when we have a few scripts and less number of CRON jobs. We have a complex environment, we interact with multiple systems most of the time and there are several logs that are captured in different systems, so our number of scripts increased, eventually jobs increased to run. We started to see a bottleneck on the server, so we started to think Cloud alternative and analyzed about the usage of AWS Lambda functions.
  • Lambda functions are best in our use case because they are serverless and you could schedule AWS Cloud watch events to run periodically.
  • Less expensive.
  • Fast execution.
  • Learning curve, it was a little bit challenging to start with, especially NodeJS runtime functions.
  • Easy alerting mechanism upon failed invocations.
  • Troubleshooting errors. We can write logs inside the function, however, if we have the ability inside the Lambda function where you raise a type of error, it can create an alert automatically, it would be great.
AWS Lambda is well suited for batch scripts, and API development.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is being used by my organization to manage machine to machine communication via serverless code. It addresses the problem of sending data between services on Amazon Web Services and it does the job quite well. The lambda handler allows me to set invocations at certain durations and also allows me to pass data back and forth in an automated manner.
  • Machine to machine communication.
  • Automatic invocation.
  • Error reporting.
  • Better interface.
  • Deployment methodology.
AWS Lambda is well suited in cases where the entire stack is on AWS. It doesn't make sense to use lambda when you have services with other cloud providers.
Jesse Bickel, MS - PMP | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is used primarily by about 20% of our staff and only in our development department. We use AWS Lambda for developing and managing our application over the cloud platform. We internally provide cloud-related solutions to our dev groups and develop web apps and services on cloud for them. So whenever we have to provide any computation related work for that particular app than I use AWS Lambda because it is easy to use and scalable and also costs less than any previous solution we have reviewed.
  • AWS Lambda is a great compute engine that allows you to run and execute your computation code without the need of maintaining servers and the overhead that comes with that.
  • We all can use our favorite programming language to develop the functions.
  • AWS Lambda is the fastest server setup on the market.
  • The relationship with S3 Triggers leaves a lot of room for improvement.
  • The solution community forums leave a lot to be desired.
  • The AWS Lambda UI experience could aid an overhaul. It's not unusable but not a great reflection of how great the service product is.
I know a lot of our developers use this personally to develop Alexa skills. The best use case for us is building simple rest API's with minimal effort and overhead. It is easy to use and scalable. You can also through a lot of load against it very quickly with little to no performance issues that I have seen. Also, it is very well suited in environments where developers have language freedoms.
Jacob Biguvu | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is an event-driven, serverless computing platform and a compute service that runs code in response to events and automatically manages the computing resources required by the code. AWS Lambda is being used by our team and across the whole organization. It's being used as part of our DR solution to run the code at scheduled times.
  • I have used the AWS Lambda for moving the RDS snapshots from cross-region like East to West and West to East. We used it as part of our DR solution. AWS Lambda is the service provided by AWS, and it makes it easy to manage the AWS resources.
  • I have used AWS Lambda for running a cleanup code against the database at scheduled times. I use Python as the coding language. AWS Lambda is the service provided by AWS, which makes easy to manage the AWS resources.
  • We can use AWS lambda function for serverless architecture.
  • We can use AWS Lambda for managing Micro-service architecture.
  • AWS Lambda has not worked in an efficient way for running long-lived applications, especially on serverless architecture.
  • AWS Lambda provides a zip deployment method, but there is a limit on size, like 500MB.
  • AWS Lambda has a significant issue with "Cold Start." It takes some time for it to handle the first request -- there, we see a real problem.
AWS Lambda is best for short-lived applications/codes. Configure AWS Lambda to act based on the events that are produced on certain services. It works. We used it to move the RDS snapshot from WEST to EAST and EAST to WEST whenever the RDS automatic backups are done. It helps in other scenarios, like when application teams don't have a server or don't have a place to run a job on a regular basis. Then we can leverage this AWS Lambda to run the code against the database. As I mentioned, this is not suited for long-lived applications.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda as a microservice platform where we off-load a large number of our common services to the serverless cloud. We have had workloads that have run for years on the platform without issues, and it has allowed us to focus on other areas of developing versus just maintaining code and servers.
  • Reliable for low workloads.
  • It's an easy entry point for development.
  • Quick speed to market.
  • It would be good to have more distribution about upgrades or changes to the platform.
  • A little more documentation on the nuances of the offered supported languages.
  • A little more portability of some of the code once you've developed it from other cloud platforms.
AWS Lambda is great for atomic micro services and being leveraged as a conduit for other Amazon services. It's great for a quick way to innovate other resources that you already have on the platform. It marries well with the ecosystem and allows for easy deployments and updates to the program based on the tools.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
My team uses AWS Lambda as a deployment target for our serverless applications. We develop them using the Serverless framework (using NodeJS) and deploy them to our company's AWS account. As a result, we don't deal with Lambda very much directly, since it's abstracted away through Serverless. But since it's so integrated into the AWS ecosystem our company uses, it is very practical and enables us to run our applications in a stateless was and not need to worry about scaling.
  • It automatically scales up your functions when demand is high.
  • It allows developers to focus only on business logic,
  • It is very cost-effective, since you're not paying for idle server time.
  • There is a lot to configure, as is the case with most of AWS's offerings. I wish it were easier to set up API Gateway with Lambda responders.
  • The default logging destination (CloudWatch) leaves much to be desired, and we opted for an external logging tool (Splunk) instead.
  • Cold starts are a persistent problem which can be mitigated with a simple cron job but would ideally be handled by the platform.
For its price, flexibility, and integration with other tools, AWS Lambda is the most popular serverless functions platform for a reason. In my opinion, it's best used as the backing behind some higher abstraction like Serverless or even Netlify Functions, but from what I've seen, it would be a great option even if used directly. In generall, serverless architecture works well for stateless applications, API aggregation, event-driven processes, and where the scale/demand is unpredictable.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda (in conjunction with SAM) to produce a decentralized notification and delivery system for 3rd Party integrations to our SaaS product.

This allows us to keep throughput for messages in our app low, and scaling is nearly automatic and instantaneous. We needed a way for our app and data to be presented to a multitude of 3rd party applications and services and didn't want to make all these points of contact happen inside our main app. Therefore we chose a queue-based approach where our main app delivers messages to a queue and the Lambdas pick those messages up and process them until the queue is empty or more Lambdas are needed.

Lambdas have proven to be very cost-effective and prevents us from needing to incur uptime for other servers.
  • Reliability - Lambdas just work. They do their job and quite well. I've never had any hiccups with them as a unit of hardware.
  • Scalability - This automatic scaling and availability are amazing. It's like having a fleet of servers at the ready but only when needed. And at a fraction of the cost.
  • Price - AWS gives you a generous helping of free invocations every month, and even after that, it's still cheap compared to an always-on solution.
  • The UI and Developer experience is not so great. IF you use an abstraction like Serverless Application Model (SAM), things get pretty easy, but it's still AWS UI/DX you're working with after that (which is to say, not their strength).
  • Documentation is always a mixed bag. Sometimes it's just easier to google your specific problem and see how others have solved it. This can be much faster than trying to find an example that may or may not be there in the documentation (which oftentimes has multiple versions and revisions).
If you're not afraid to get your hands dirty in wiring things up yourselves or you can use AWS' own abstractions like Amplify or SAM, then Lambdas and their surrounding platform pairings (Like SQS, API gateway) are great tools that can help you create a backend or infrastructure for a relatively low cost. If you don't find yourself in that camp, but you know your way around full-stack JavaScript frameworks and tooling, you may be better served with a higher level abstraction like what Zeit Now or Netlify offers.
August 14, 2019

Functions as a service

Score 9 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda to efficiently auto scale our NodeJS-based infrastructure without the overhead of needing to manage virtual machines or worry about capacity planning. Additionally, we don’t need to manage security patches for the OS because there is no OS to worry about!
  • Auto-scaling.
  • Scale to zero.
  • Quick function startup.
  • Less vendor lock-in.
  • Better integration with community tools like OpenFaaS.
  • Improved cold start times.
AWS Lambda is great for distributed systems in which scaling of independent components is critical and you don’t want to manage the overhead of needing to maintain a fleet of virtual machines.
August 13, 2019

AWS Lambda Review

Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS Lambda is currently being used to respond to events generated within our AWS infrastructure (instances terminated/created) to perform specific actions. Because AWS Lambda is not constantly running, and only in response to events, we're able to save money by only paying for the amount of CPU resources needed when functions are run.
  • Cost Savings
  • AWS integration
  • Python and Go support
  • Need to rely on 3rd party tools for complex deployments
  • Precompiled Python dependencies sometimes won't work
  • Inability to share test events with other users
AWS Lambda is best used in environments where you need to perform specific actions in response to an event happening. This reduces cost and will only be billed for the CPU time it takes to run the function. For long-running tasks, AWS Lambda is not good because of the timeouts set by the function.
Richard Rout | TrustRadius Reviewer
Score 7 out of 10
Vetted Review
Verified User
Incentivized
We use AWS Lambda to host our micro-services that don't need to worry about too much infrastructure. Lambdas are great at running pieces of code that don't necessarily have to belong in the main infrastructure. We have a few different lambdas that each have single responsibilities, such as creating and uploading files to S3, and running complex calculations.
  • Runs "functions" in the cloud. Pretty simple really
  • Always having the latest version available
  • Not having to worry about infrastructure
  • Anything too complex is not a great solution
  • Can take a little while to spin up if inactive for a while
  • Can be easy to misuse or abuse.
Anywhere you have an isolated responsibility of your code, AWS Lambdas are well suited for. If you have something that has to perform an intensive calculation - it makes sense to offload that to something like an AWS Lambda. Or something that needs to send data and integrate with another service, it can be a good place for that interface/job to live.

It can be possible to build a larger architecture using a series of AWS Lambdas, but it could become hard to maintain and be hard to understand very quickly.
Return to navigation