aws-lambda-power-tuning
serverless-application-model
aws-lambda-power-tuning | serverless-application-model | |
---|---|---|
36 | 98 | |
5,163 | 9,241 | |
- | 0.2% | |
8.7 | 9.2 | |
6 days ago | 4 days ago | |
JavaScript | Python | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
aws-lambda-power-tuning
-
Optimizing Costs in the Cloud: Embracing a FinOps Mindset
Sometimes, changing services, like opting for HTTP over REST API Gateway, leveraging tools like Lambda Powertuning to optimize functions, or reducing a CloudWatch log retention and changing log level, can lead to significant savings.
-
AWS SnapStart - Part 13 Measuring warm starts with Java 21 using different Lambda memory settings
In case of not enabling SnapStart for the Lambda function we observed that increasing memory reduces the warm execution time for our use case especially for p>90. As adding more memory to the Lambda function is also a cost factor, the sweet spot between cold and warm start time and cost is somewhere between 768 and 1204 MB memory setting for the Lambda function for our use case. You can use AWS Lambda Power Tuning for very nice visualisations.
-
How to enhance your Lambda function performance with memory configuration?
The aws lambda power tuning tool helps optimise the Lambda performance and cost in a data-driven manner. Let's try it out:
-
Controlling Cloud Costs: Strategies for keeping on top of your AWS cloud spend
For Lambda, a very useful tool to help optimise is the AWS Lambda Power Tuning tool, released by Alex Casalboni, Developer Advocate at AWS: https://github.com/alexcasalboni/aws-lambda-power-tuning
-
Best way to decrease latency (API <-> Lambda <-> Dynamodb)
Lambda memory affects not only the CPU performance and and host execution priority, but also network performance. Be wary though as the price scales linearly. You can use a tool like Lambda Power Tuning to find the sweet spot for your application. https://github.com/alexcasalboni/aws-lambda-power-tuning
-
How to optimize your lambda functions with AWS Lambda power tuning
This tool, which is open source and available here, takes the form of a Step Function that is deployed on your AWS account. The purpose of this Step Function is to run your lambda with different memory configurations several times and output a comparison in the form of a graph (or JSON) to try to find the optimal balance between cost and execution time. There are three possible optimization modes: cost, execution time, or a "balanced" mode where it tries to find a balance between the two.
-
Developers Journey to AWS Lambda
The AWS Documentation's Memory and Computing Power page is a good starting point. To avoid configuring it manually, it's worth checking out AWS Lambda Power Tuning, which will help you find the sweet spot.
-
Guide to Serverless & Lambda Testing — Part 2 — Testing Pyramid
Utilizing tools such as AWS X-Ray, AWS Lambda Power Tuning, and AWS Lambda Powertools tracer utility is recommended. Read more about it here.
-
Tunea tus funciones Lambda
Install the AWS SAM CLI in your local environment. Configure your AWS credentials (requires AWS CLI installed): $ aws configure Clone this git repository: $ git clone https://github.com/alexcasalboni/aws-lambda-power-tuning.git Build the Lambda layer and any other dependencies (Docker is required): $ cd ./aws-lambda-power-tuning $ sam build -u sam build -u will run SAM build using a Docker container image that provides an environment similar to that which your function would run in. SAM build in-turn looks at your AWS SAM template file for information about Lambda functions and layers in this project. Once the build has completed you should see output that states Build Succeeded. If not there will be error messages providing guidance on what went wrong. Deploy the application using the SAM deploy "guided" mode: $ sam deploy -g
-
AWS Serverless Production Readiness Checklist
Use AWS Lambda Power Tuning to balance cost and performance.
serverless-application-model
-
Simple and Cost-Effective Testing Using Functions
The complete solution with SAM is available here.
-
Deploying a Serverless Dash App with AWS SAM and Lambda
There are many options to deploy Serverless Applications in AWS and one of them is SAM, the Serverless Application Model. I chose to use it here, because it doesn't add too many layers of abstraction between what's being deployed and the code we write and our infrastructure is quite simple.
-
Serverless Apache Zeppelin on AWS
The solution uses AWS SAM with the global configuration for Lambda functions and the public API you can use to access Apache Zeppelin. The stack deployment provides the URL as an output value.
-
Using design patterns in AWS Lambda
When you combine this with the AWS Serverless Application Model you can also very easily include your dependencies. Or use a compiled language like golang for your Lambda functions. You simply run sam build before you run the aws cloudformation package and aws cloudformation deploy commands. SAM will build the binary and update the template to point to the newly built binary. Package will then upload it to S3 and replace the local reference to the S3 location. Deploy can then create or update the stack or you can use the CloudFormation integration in CodePipeline.
-
Serverless Site Health Check Notification System
I'm a big fan of using an Infrastructure as Code (IaC) approach for any project. My go to tools for this are the Servlerless Application Model (SAM) and it's associated CLI (SAM CLI). For more official use cases and for cross platform apps I typically use Terraform.
-
Starting My AWS Certification Journey as a Certified Cloud Practitioner
AWS SAM
-
API Gateway, Lambda, DynamoDB and Rust
Kicking off the tour and not starting a war, but I'm going to be using the Serverless Application Model.
-
Consuming an SQS Event with Lambda and Rust
The diagram here is super simple. I'm going to write something a little later that shows how this code could fit into a bigger workflow, but for now, I'm keeping it basic. And yes, that's the SAM Squirrel in there.
-
AWS Data Engineer Associate Certification - Coming Soon
Interestingly, AWS CDK and SAM are both explicitly mentioned. While CDK broadly addresses Infrastructure as Code, SAM is highlighted for its role in developing serverless data pipelines - a hugely underrated concept.
-
A Beginner's Guide to the Serverless Application Model (SAM)
Naturally, there are several options available to declare your cloud resources. The options with the most popularity are the CDK, AWS CloudFormation, SST, Serverless framework, Terraform, and AWS SAM. There are others, but when talking about Infrastructure as Code (IaC), these are the ones you hear about most often.
What are some alternatives?
json-schema-to-ts - Infer TS types from JSON schemas 📝
aws-elastic-beanstalk-cli - The EB CLI is a command line interface for Elastic Beanstalk that provides interactive commands that simplify creating, updating and monitoring environments from a local repository.
dynamodb-toolbox - A simple set of tools for working with Amazon DynamoDB and the DocumentClient
LocalStack - 💻 A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline
middy - 🛵 The stylish Node.js middleware engine for AWS Lambda 🛵
Moto - A library that allows you to easily mock out tests based on AWS infrastructure.
aws-sam-cli - CLI tool to build, test, debug, and deploy Serverless applications using AWS SAM
sst-start-demo - A simple SST app to demo the new `sst start` command
aws-graviton-getting-started - Helping developers to use AWS Graviton2 and Graviton3 processors which power the 6th and 7th generation of Amazon EC2 instances (C6g[d], M6g[d], R6g[d], T4g, X2gd, C6gn, I4g, Im4gn, Is4gen, G5g, C7g[d][n], M7g[d], R7g[d]).
openvscode-server - Run upstream VS Code on a remote machine with access through a modern web browser from any device, anywhere.
failure-lambda - Module for fault injection into AWS Lambda