When you hear the term serverless computing, it can be a little misleading and confusing. The whole point of having a business network means having computer servers, right?
In serverless computing, there are still servers involved, but the difference is you don’t own them.
Here’s a good analogy to help you better understand the concept.
What NOT Owning or Driving a Car Can Teach About Serverless Computing
Imagine “car-less transportation.”
You decide one day that you’re no longer going to own an automobile. But being car-less doesn’t mean you spend all day in the house. It also doesn’t mean you have to walk everywhere or ride your bike. After all, you still need to get to work, run errands, and visit family.
But rather than being burdened with the costs and hassles of owning your own car, you outsource your transportation to someone who can handle it better and give you better service. Someone else drives the car, someone else maintains it and gets it serviced, and someone elsemakes sure it’s operational 24/7.
Imagine your transportation budget only allows you to own a 2012 Honda Accord. It’s okay for basic transportation, for traveling short distances from Point A to Point B. But it can’t handle long trips or carry your biggest loads, like taking you and your family out to dinner on the weekend. Or picking up a load of plywood and 2x4s from the lumber yard.
Your car is also not that fast, and you occasionally need to get to the office quickly. And you need to constantly take it into the mechanic for service, repairs, and updates to different parts. Sometimes, you skip your maintenance for a few weeks or months, and getting the updates puts your car out of commission for a few days. Plus, you’re at risk of it being too old to handle the new parts.
So you get rid of that car and sign up for a car service. You can choose the size of car you need for different times. For the most part, you just need something to get to work, but occasionally you need a sedan to take the family on a trip, or a pickup truck to make the lumber yard runs. Once you’re done with that increased workload, you switch back to your normal everyday car. And best of all, you’re not even driving it yourself: Someone else is driving the car for you.
And whenever there’s a need for updates and maintenance, your car service will take care of everything while you’re not using the car. They even do it so smoothly you never even notice the interruption to your car service.
How Serverless Computing Works
Serverless computing works in exactly the same way as the car service analogy. Going serverless doesn’t mean you don’t have servers, it means you don’t own them yourself. It means you don’t have to worry about setting up and maintaining them or paying for maintenance overhead.
You still have the capabilities, but instead of owning the servers outright and keeping them on your premises, you rent or lease server space with a professional cloud computing provider. They’re completely managed by the provider so you can focus on your own core competencies.
There are several benefits to this model too.
- Companies often don’t have the budget for the biggest and most advanced server technology. They can afford something slightly larger than their biggest demands, but they don’t have the capacity to handle large processing tasks (i.e. trips to the lumber yard).
- Buying the larger server capacity “just in case” means you’re not using that server capacity 95 percent of the time. You’ve tied up some of your capital in an IT system you’re not using.
- You need in-house professionals who can regularly provide maintenance and updates to your servers, which is expensive in itself. Eventually, the updates and specialty tools will become too advanced for your servers, which will one day become obsolete.
- When your servers become obsolete, you need to replace them. That will solve the previous problem somewhat, but you’re still updating servers every few years, and if there’s a failure that you weren’t counting on, it can put a crimp in your IT budget.
- You can scale your available server space up and down as you need it, paying only for what you use, rather than renting a capacity and then never using it.
This last aspect of serverless computing is what makes it different from regular cloud computing. In those instances, you might rent a single blade server, or even pay by the desktop for a fully-functional hosted network.
Your costs are based on how much capacity you plan for and request, not the processing capacity you actually use.
- For example, with normal cloud computing, if you require a server with 8 core CPUs and 16 GB of RAM for 4 hours, you’ll pay for the full 4 hours, even if your program only used 15 minutes of CPU time. If you reserved the same setup for 30 days, and only use it for 7 days, you’ll pay for the entire 30 days.
- With serverless computing, if your program uses 15 minutes of CPU time (or 7 days), you will only pay for the time you actually used. This will result in substantial savings in your IT budget if this is an ongoing issue.
This is also true for the business applications you might use on those servers. You’re paying for their availability, not their actual usage. It’s like owning a delivery van, but only driving it back and forth to work: You’ve got all this extra space just sitting empty “just in case” you need it once a year.
But with serverless computing, there is something called Function-as-a-Service (FaaS), which is similar to Software-as-a-Service (SaaS). In a FaaS setting, you’re paying for the amount of functionality you use, not its availability. Think of it as the Uber of computer functionality.
Serverless computing is the future of cloud computing, and it’s possible to take full advantage of its benefits with the help of serverless computing experts.
Photo credit: Grendelkhan (Wikimedia Commons, Creative Commons 4.0)