DevOps and Security Glossary Terms

Glossary Terms
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

AWS Lambda - definition & overview

In this article
What is Amazon Web Services Lambda?
AWS Lambda features
Smart budgeting with AWS Lambda
Supercharge log analysis with Lambda functions
FAQs
What is Amazon Web Services Lambda?
AWS Lambda features
Smart budgeting with AWS Lambda
Supercharge log analysis with Lambda functions
FAQs

What is Amazon Web Services Lambda?

Amazon Web Services Lambda is a powerful and highly cost-effective way to add power and scalability to your environment. With AWS or Amazon Lambda, you can focus on developing your application without worrying about infrastructure and stretch your IT budget by paying only for the computing time you use. Below are some keys to understanding what Lambda can do, its options, and maximizing its logging potential.

Key takeaways

  • With AWS Lambda, you can focus on developing your application without worrying about infrastructure.
  • You can use AWS Lambda to reduce architecture overhead and optimize your operations.
  • With AWS Lambda's serverless architecture and on-demand, auto-scaling features can grow or shrink network resources to match your traffic needs, all with no user intervention.

AWS Lambda features

The AWS Lambda service is a way to run your applications in your AWS environment without worrying about underlying infrastructure such as CPU, memory or storage. The service enables you to upload your code–called a Lambda function –and configure it to execute under certain circumstances. Once in place, the Lambda function will operate as little or as frequently as its parameters indicate, and you will only pay for the actual processing time that your function requires.

The AWS Lambda Console can configure applications, functions, code signing configurations, and layers. Manage functions and other AWS Lambda resources with the AWS Command Line Interface.

The AWS CLI uses the AWS SDK for Python (Boto) to interact with the Lambda API. The Lambda console includes sample applications that use the AWS Cloud Development Kit (AWS CDK) for TypeScript.

The AWS CDK is a framework that enables you to define your application resources in TypeScript, Python, Java, or .NET. You can also use AWS Lambda to process lifecycle events from Amazon Elastic Compute Cloud and manage AWS EC2 resources.

Lambda function URLs use resource-based policies for security and access control. Function URLs also support cross-origin resource sharing (CORS) configuration options.

You should use AWS CloudFormation with your Lambda-based application to add or modify resources in your application stack more safely. If any part of an update fails, AWS CloudFormation automatically rolls back to the previous configuration.

For programming AWS Lambda, you can create a web API with an HTTP endpoint for your Lambda function by using Amazon API Gateway. API Gateway provides tools for creating and documenting web APIs that route HTTP requests to Lambda functions. Secure access to your API with authentication and authorization controls.

Be aware that the Amazon Linux 2 AMI and Amazon Linux AMI used for Lambda runtimes don't support all the same native binary packages.

The instances where Lambda functions can be used instead of server-based architecture include:

  • Application development. Write and execute code without understanding every AWS service required to run your application and without the complexity of auto-scaling and infrastructure performance bottlenecks. A Lambda layer provides a convenient way to package libraries and other dependencies you can use with your Lambda functions. Using layers reduces the size of uploaded deployment archives and makes it faster to deploy your code.
  • With Amazon S3/AWS S3. Run a Lambda function as soon as any new file gets uploaded to a specific S3 bucket.
  • With Amazon Kinesis. Trigger Lambda functions on specific logging events, such as new website visitors.
  • With AWS CloudTrail. Needle-like events logging and AWS monitoring in the haystack of Cloudtrail logs can launch Lambda functions like enabling or disabling access permissions to resources like APIs and S3 storage buckets.

While AWS Lambda doesn't support all programming languages, it does support many popular programming and scripting languages, such as Java 8, Node.js (JavaScript), and Python. If you are a big C# shop, you may be unable to use AWS Lambda.

Click here to learn more about AWS Lambda logging best practices.

Smart budgeting with AWS Lambda

With AWS Lambda's serverless architecture and on-demand, auto-scaling features can grow or shrink network resources to match your traffic needs, all with no user intervention. This offers savings in potential compute overhead, pricing according to the total number of requests and the amount of actual memory used in 100ms billing units. This ensures you only pay for the amount of time you use.

Channeling that knowledge into action is where time and costs can be cut substantially. Use your logs to monitor:

  • The total number of requests per Lambda function
  • Resources needed to execute functions
  • Average time from function call to execution
  • Total Lambda error counts and detailed error per resource tracking

Careful analysis of these metrics will open insights into how you're spending an IT budget, where you can save, and where growth seems to require future investment.

Click here to learn more about AWS Lambda monitoring.

Supercharge log analysis with Lambda functions

AWS Lambda is at the forefront of a wave of serverless functionality and continuous auto-scaling in dynamic network environments. You can get logs, platform metrics and platform traces from AWS Lambda directly into Sumo Logic using the new Telemetry API. Through this new integration, Sumo Logic and AWS make it possible to gain enhanced observability, making it easier to monitor your Lambda function.

AWS Lambda Extensions enable Sumo Logic to integrate more easily into the Lambda execution environment to control and participate in the Lambda lifecycle. This extension reflects our commitment as an AWS Lambda Ready Partner to deliver unified observability to customers who build and operate Lambda functions.

Use AWS Lambda to reduce architecture overhead and optimize your operations. You can create your free AWS account today –– get started with Lambda, and check out the Sumo Logic App for Lambda.

FAQs

What is the pricing structure of AWS Lambda?

AWS Lambda pricing is based on the number of requests and the duration of your code execution. You are charged for the total number of requests across all your functions and the time it takes for your code to execute. There is a free tier, and you only pay for what you use beyond that. Additionally, AWS offers a pricing calculator to estimate costs based on your expected usage.

How secure is AWS Lambda?

AWS Lambda offers features like VPC networking, resource policies, identity and access management (IAM) roles and encryption options to help secure your functions and data. You can also use AWS IAM to control access to your Lambda functions and other AWS services

Are there any limitations to consider when using AWS Lambda for application development?

There are some limitations to consider when using AWS Lambda for application development. These include constraints on execution duration, memory, disk capacity and environment variables. Additionally, AWS Lambda has limits on the size of deployment packages, the number of concurrent executions and the supported programming languages.

Complete visibility for DevSecOps

Reduce downtime and move from reactive to proactive monitoring.