The funny thing about serverless cloud computing is that it’s a service offered by major cloud vendors that decreases the billings those vendors get. Or so it appears.
How many industries do you know where the lead vendors announce new technology that lowers their bottom line? But cloud leaders AWS, Azure and Google Cloud do just that – in fact they trumpet serverless like a major step forward in cloud, which in fact it is.
(The truth is that serverless will drive ever greater adoption of cloud, so it’s a net revenue winner for cloud providers, longer term. They’re no fools.)
A quick background: serverless automates the process of allocating compute resources to an application in the cloud, so that app has just enough resources but not too much. It’s famously hard for cloud customers to provision just the right amount of resources. Virtual machines are spun up and lay idle, wasting money. Serverless solves this core problem, hence the costs savings.
Understanding Serverless Cloud Costs
To more fully understand the economics of serverless cloud, I spoke with one of the world’s leading experts (perhaps the leading expert) on cloud computing costs: Owen Rogers, Research Director of the Digital Economics Unit, 451 research.
Rogers earned a PhD on the economics of cloud computing from the University of Bristol. Furthermore, he is the architect of the Cloud Price Index, 451 Research's benchmark indicator of the costs of public, private and managed clouds, and the Cloud Price Codex, 451’s global survey of cloud pricing methods and mechanisms.
Here’s the video of our discussion. Below you’ll see a transcript of just the highlights of our talk about serverless.
Economic Benefits to Serverless:
“I think there’s two economic benefits to serverless. The first economic benefit is, there’s no need to take care of the infrastructure. No need to take care of all of the underlying resources. You just write your code and spin it up whenever you need it. And then the second benefit is a question of utilization. So, rather than having to have that virtual machine there all month ticking away and ramping up costs, you can just execute your function and as soon as its finished it disappears and you incur no costs as a result.”
Does Serverless Cost Less:
“Is serverless cheaper? Unfortunately, as an economist, my answer has to be that it all depends. If you have a virtual machine and that is being used constantly all of the time and loads of requests are being made to it, then actually that might be cheaper than using the serverless in this instance. Because obviously every time that serverless code is called you have to pay something. I would say that if a virtual machine is being consumed all of the time; if you’re getting high levels of utilization within that machine, then you’re probably doing the right thing.
Whereas, if a function only needs to run occasionally or is far more bursty then serverless is going to be the right technology, at least from an economic perspective.
Now, obviously, the benefit of serverless is that if you do have no idea how much you’re going to use, whether its going to be millions of requests or tens of requests, serverless can scale to do that automatically. Whereas with virtual machines you have to build far more of that scalability into the application.”
Some cloud users tell me they are saving a lot using serverless:
“Yeah, I’m sure. Of course. There are so many tiny functions that companies have to install in their IT estates. Continuous integration, these little clean up activities, these little triggers. For those, it makes sense to put them on serverless where they only need to be called now and then, rather than having a bunch of expensive virtual machines ticking costs away all of the time without generating value for all of the time its on.
Does that mean that the big cloud vendors will, in fact, actually lose money from serverless:
“I don’t think so. Really, we’re at an early stage of cloud adoption. Lots of companies are now heavily involved in cloud, but there’s so much workloads left to [deploy] and so many opportunities left. So, it might be, possibly, that people decide not to use virtual machines and instead they use serverless. But the accessibility of serverless means that volume should be increasing. So, as a result of people moving to serverless, more and more people will consume serverless and more and more benefits will be derived.
I suppose it comes back to Jevons paradox to some degree. So, in the industrial revolution technology [productivity] was getting more efficient and rather than saving costs it just meant that people consumed more. And I reckon we’ll see the same with serverless. It will be so easy to use and so powerful, rather than cutting costs and reducing revenue for service providers, it’ll just grow and grow by volume and consumption.”
Tips for lowering or managing the cost of serverless cloud computing:
“A lot of it has to do with making sure you know who’s using it and what they’re using it for. There’s so much shadow IT and there’s so much threat of runaway costs, and exactly the same could happen with serverless as it does with virtual machines and storage. If there is an errant function being called all the time which isn’t driving any value, which is being done accidentally, or its being called for no reason by an employee who shouldn’t have those privileges, then those costs are going to ramp up and not drive any value for the business.
So, I think having an awareness of who is using it, making sure you set controls within your cloud provider, and making sure you’re checking your usage and billing reports is crucial in understanding that you’re using serverless in the right value-adding way.”
Which one of the major cloud vendor is cheaper for serverless?
“Again, as an economist I’ll have to give the answer that it all depends. In our Cloud Price Index Economics of Serverless report, we generally found that IBM was cheapest for very small duration scripts. So, functions that would only last for like a tenth of a second. Azure would be cheapest for longer term scripts, for those that might run for ten seconds. And the reason is each provider of serverless prices in a different way. There are multiple metrics. And there are free tiers. Each provider offers a number of free resources. So, it’s difficult to just look at one of these metrics and work out which is cheaper. Because its really a complex equation of how many functions, how long is that function lasting for, and how many times has it been called.”
It's unlikely that a customer would actually choose a cloud vendor based on their serverless costs:
“I agree. The Cloud Price Index evaluates prices and costs based on the basket of cloud services concepts. So, very few cloud consumers are going to consume just serverless. Most would take advantage of virtual machines and storage, and serverless would just be a component of that. So, that’s why we track these baskets of cloud servicing.
Now of course, different providers have different value benefits compared to each other. I think they are probably going to be the leading decision criteria compared to costs. But we’ve found that cost and pricing is increasingly important, and it’s especially important when evaluated across the whole solution rather than just on single services like just serverless.”
Since serverless doesn’t work as well for legacy applications, it won't be a factor for those companies that want to handle their legacy applications in the cloud:
“Exactly. Some applications are going to take advantage of containers, but lots won’t be suitable. I think we’re going to see a world where serverless, virtual machines, containers, dedicated cloud and private cloud are all going to live side by side for quite a long time yet. We still see mainframes out there, and they haven’t disappeared.
The world is far more complex than just saying that everything is going public cloud or serverless. The world is a rich place.”
Will the “race to the bottom” price war among leading cloud vendors continue for serverless:
“I think serverless is primed to be part of a price war. Mostly because most cloud providers price in similar ways. It’s highly visible, so if there are cuts to serverless pricing, the media will grab ahold of it and there’s a lot of promotional material. And also, I mean, when computer storage has price cuts they get a lot of attention, but I think cutting prices on things such as serverless or even higher value services such as IoT or AI, there’s a lot more of a message of, ‘hey, this technology is cool, sexy and trendy, but also now its inexpensive.’ And I think serverless is almost a natural battleground for cloud providers to make this message.”
So, where do we go with the future of serverless cloud computing?
“Clearly, what we’ve seen in general over the Cloud Price Index is that the value of loyalty has become ever more valuable. If you’re willing to commit to your cloud provider, you’ll make a greater saving than you did five years ago, for example. And I think we will start to see this translated into serverless.
Now, it could be some kind of committed price model on serverless where you get a discount for purchasing a certain amount of capacity over a longer period. But, I think what we’re going to see more and more of is solution based discounts. So, providers will say if you consume, let's say, a million dollars of services over a period of a month we’ll give you an automatic discount of 20%. In that way, serverless will be reduced in price as a result of this overall discount in all of consumption.
I think these solution discounts are fairer, really. Enterprises don’t just consume virtual machines or storage. Service providers want them to consume all of the technology they offer.”