|
| |||
|
|
How Serverless Computing Can Help Optimize Your Cloud Apps Serverless computing can make your cloud-based apps much more efficient. Wondering what serverless computing means, what the advantages and drawbacks are and how you can go serverless? Keep reading for a primer on serverless computing solutions. Before diving into the details, let’s get one thing straight: Serverless computing does not mean computing without servers. In a serverless computing environment, you still host your apps on servers. How Serverless Computing WorksSo what does serverless computing mean, then? In a sentence, serverless computing is a type of solution that allows you to run code on a cloud server without having to configure or maintain the server in any way. That’s different from traditional cloud computing. Normally, even if you host your apps on a virtual server based in the cloud, you still have to set up and manage that server. You have to install an operating system on it, monitor it, keep its software updated, and so on. Under the serverless model, none of that is necessary. All you have to do is upload code and execute it. Your computing experience is serverless in the sense that you don’t have to think about the servers that host your app (even though they still exist). Serverless Computing BenefitsServerless computing comes in handy when you have resource-hungry code that needs to be executed at fluctuating, unpredictable rates. Traditionally, the only way to ensure that you will always have the resources on hand to execute code like this would be to maintain a massive infrastructure. But doing so is very inefficient, because it requires you to set up and maintain a large number of servers that are only used at the moments when you happen to need them. Serverless computing solves that problem by allowing you to execute code on-demand on cloud-based servers that are maintained by someone else. All you have to do is upload the code you want to run, then tell your serverless computing service when to run it. Serverless Computing Use Case ExampleA good example of a situation in which serverless computing can pay major dividends is a Web application where users upload photos that need to be resized by the app. Image resizing is a resource-intensive operation, and there is no way to know when a user will choose to upload a photo. Therefore, in order to resize photos effectively, you need a way to run image-resizing code on a server that is powerful enough to execute it quickly. Serverless computing provides an excellent solution in this situation. It allows you to gain instant access to massive cloud-based computing resources for resizing images whenever you need those resources. And you only pay for the resources when you are actually using them. Limitations of Serverless ComputingThere are a few limitations to keep in mind when considering how serverless computing can help you:
Serverless Computing ServicesWho’s providing serverless computing solutions? AWS was the first major entrant to this niche. It launched Lambda Functions in 2014. Lambda remains a very popular serverless computing solution, especially because it supports most popular programming languages. It took other public cloud providers some time to catch up with Lambda, but they are now doing so. Azure offers Azure Functions. IBM’s solution for the Bluemix cloud is called OpenWhisk. Google Cloud’s answer to Lambda is Cloud Functions, which are currently in alpha. Serverless computing can help you make much more efficient use of the public cloud. It allows you to get access to all of the computing power you need, without paying for any extra. For now, serverless computing is still maturing. But expect it to become a bigger and bigger deal as more vendors add serverless solutions and as the choices become more sophisticated. This article first appeared here, on Talkin’ Cloud. |
|||||||||||||