Enterprise use cases for AWS Lambda

Recently, we covered the top enterprise serverless use cases for AWS Lambda. To refresh our memory, according to the CNCF (Cloud Native Computing Foundation), most commonly AWS Lambda is used for REST APIs, multimedia/image processing, CRON jobs, and stream processing. Today I’d like to cover some more complex ways some of our enterprise customers use Lambdas.

During the AWS re:Invent back in 2017 Raghu Chandra, the Global Delivery Leader for Cognizant Technology Solutions presented the six most popular use cases they implemented with their customers over the years. We’re going to look into three of them.

Data lakes

Today, many companies are implementing AWS just for the data lake situation. Amazon S3 provides an optimal foundation for a data lake because of its virtually unlimited scalability.

Let’s look into the sample data lake’s architecture above. When copying the files to the S3 from the on-premises data sources, you would want to set up a Lambda function to check the file size that has just come in before sending it to the staging layer through either DataPipeline or S3 upload. The second lambda will be used to bring up the EMR clusters to process the data to do the normalization and ETL (extract, transform, load) before we persist that into a DynamoDB or AuroraDB.

So a very classic use case – two lambda functions in a data lake scenario to detect the source file and to work with the EMR clusters or any other ETL jobs that we want to invoke to process the data.

Microservices

The second sample architectural pattern for enterprises is microservices. Depending on the certain use case, the services can be short running or long running. For a long-running service, you can deploy it onto a container on ECS but for a short running service, you can use the Lambda through an API Gateway. The REST API endpoints can be managed by API Gateway which can invoke those services on Lambda.

Disaster recovery

There are several ways to leverage AWS Lambda to construct a DR plan. Often when making changes to primary data center configuration like changing code, jar files or database tables it’s recommended to do a backup and restore. Lambdas can be used to automate tasks like EBS snapshot and AMI creation to backup your resources to S3 when configuring EC2 instances. As in every disaster recovery scenario, you would have a primary and a secondary data center, so once the new code is available in S3 you would want to have a Lambda function to copy that code into a secondary data center and to invoke the CloudFormation scripts build the AMI and deploy it on the secondary data center.

So in the fewest possible words, lambda is used to listen to the events of changes in code (in our use case S3) and in a database and to sync both with the secondary data center.

Conclusion

As we know, serverless can never replace the whole stack when dealing with larger enterprises – it just isn’t reasonable, but it can bring a whole lot of value when combining Lambdas and other serverless services with the infrastructure in the right way. To make sure these Lambdas won’t fail when doing a critical job, Dashbird can help you to ensure reliability by providing end to end observability into your stack.

Read our blog

How to Monitor Your AWS RDS Instances

In this article, we’ll cover all the steps for creating proper monitoring for your RDS instances by starting with metrics and performance guidelines.
We will also compare the monitoring options offered by AWS with Dashbird’s simple but nevertheless all-encompassing approach.

Why and how to monitor Amazon API Gateway HTTP APIs

Monitoring your HTTP APIs can transform your decision process with actionable information instead of guessing around user complaints and high bills.
This article will look at why and how to monitor HTTP APIs and how Dashbird will help you do that. 

5 Common Amazon Kinesis Issues

AWS Kinesis is a professional tool that comes with its share of complications. This article will discuss the most common issues and explain how to fix them.

Made by developers for developers

Dashbird was born out of our own need for an enhanced serverless debugging and monitoring tool, and we take pride in being developers.

What our customers say

Dashbird gives us a simple and easy to use tool to have peace of mind and know that all of our Serverless functions are running correctly. We are instantly aware now if there’s a problem. We love the fact that we have enough information in the Slack notification itself to take appropriate action immediately and know exactly where the issue occurred.

Thanks to Dashbird the time to discover the occurrence of an issue reduced from 2-4 hours to a matter of seconds or minutes. It also means that hundreds of dollars are saved every month.

Great onboarding: it takes just a couple of minutes to connect an AWS account to an organization in Dashbird. The UI is clean and gives a good overview of what is happening with the Lambdas and API Gateways in the account.

I mean, it is just extremely time-saving. It’s so efficient! I don’t think it’s an exaggeration or dramatic to say that Dashbird has been a lifesaver for us.

Dashbird provides an easier interface to monitor and debug problems with our Lambdas. Relevant logs are simple to find and view. Dashbird’s support has been good, and they take product suggestions with grace.

Great UI. Easy to navigate through CloudWatch logs. Simple setup.

Dashbird helped us refine the size of our Lambdas, resulting in significantly reduced costs. We have Dashbird alert us in seconds via email when any of our functions behaves abnormally. Their app immediately makes the cause and severity of errors obvious.