AWS Lambda functions are emerging as one of the most popular instances on Amazon's public cloud platform. Here's a primer on what Lambda functions are, and how they can help MSPs.
To understand why Lambda is valuable, you first have to understand how people traditionally use the public cloud. Normally, to run an app on AWS or another public cloud platform, you would have to pay for a virtual server, then provision it and install your app on it. In order to ensure that your app is available whenever users want to access it, you would need to have the virtual server running non-stop. That means you would also be paying for the virtual server continuously.
That's fine if people are using your app at maximum capacity twenty-four hours a day. But what if you only need the app occasionally? What if demand for the service fluctuates widely and unpredictably? Under these circumstances, keeping a virtual server running all day and night is inefficient. It requires paying all of the time for cloud hosting resources that are only being used some of the time.
Introduction to Lambda
Lambda functions solve that problem. With Lambda, you can upload code to the AWS cloud to perform a certain task. You can then run that code whenever you need it to do some work for you.
The neat thing is that you only pay AWS for Lambda code when you are actually using it. When your code is sitting idle, it doesn't cost you any money. (You have to pay separately for persistent storage to store the data generated by Lambda functions, but you'd be doing that with a virtual server, too.) This is Lambda's big selling-point. It solves the problem of having to pay for server capacity in the public cloud that you don't need.
Lambda also offers the benefit of letting you run code without provisioning an entire server. You don't have to install an operating system and configure a virtual server to run your Lambda code. Instead, you just upload the code itself, and AWS handles the rest.
Lambda and MSPs
How can Lambda help MSPs? The most obvious benefit is that it can reduce the hosting costs associated with cloud-based services MSPs offer their customers. For example, if you provide a backup and recovery service for your customers, but you only back up their data once per day, you don't need a backup service running constantly. In this case, using Lambda functions instead of a dedicated virtual server to do the backups would be more efficient.
Lambda functions can also be handy as a way to offload compute-intensive tasks from your own servers to the cloud in a cost-efficient way. For instance, if you maintain a software repository and rebuild your apps every day or week, you could take advantage of Lambda functions to help recompile the code. Since compilers put a heavy strain on servers, and code builds are likely to be the most resource-hungry operation you perform, offloading this task to the AWS cloud with Lambda functions will allow you to run leaner on-premise servers.
If you haven't yet heard of Lambda functions, then, it may be time to take a close look. They can do a lot to make your work as an MSP less costly and more efficient.