SEARCH FINANCIAL SERVICES INFRASTRUCTURE SECURITY SCIENCE INTERVIEWS

 

     

The economics of serverless cloud computing

By Owen Rogers

July 24, 2017

Serverless is more than just hype; it has the potential to revolutionize the way we develop, build and operate applications in the cloud. Understanding the economics of serverless technology is vital to understanding its role in the world and its longer-term potential to disrupt the industry. In the Cloud Price Index's latest Technology & Business Insight report, we review these economics, pit the TCO of serverless against traditional virtual machines (VMs) and containers, and compare pricing across the big four providers, namely Amazon Web Services, Google, IBM and Microsoft. We also announce the addition of a serverless benchmark to the Cloud Price Index.

The 451 Take

The benefits of serverless are related to its advantageous economic position. Not having to worry about infrastructure frees up developers and operations to concentrate on deriving business value through applications, instead of performing rudimentary administrative tasks. With such fine granularity of billing, utilization is maximized, further improving the economic arguments for serverless. Against VMs and even containers, serverless seems to be a cost-efficient alternative. Free tiers let developers experiment, which we think will bring serverless technologies into an increasing number of use cases, and will further increase its economic advantage. Over time, serverless is poised to be a battlefront in a cloud price war.

Serverless is positioned to beat traditional compute on TCO and price

The ability to execute code on demand, with no need to provision the underlying infrastructure, is the principle of serverless computing. The name 'serverless' implies that no servers are used to run an application or service, but of course, the true concept is that developers and those in operations do not need to worry about the complexity and maintenance burdens of VMs or containers. The user's experience should be essentially serverless. AWS was first hyperscaler to address the potential with Lambda, with IBM Bluemix, Google, Microsoft Azure and others soon following suit.

There are two primary cost benefits of serverless technology. First, developers and operations are no longer responsible for infrastructure developers only need to write the code they want to execute, with no need to spin up servers, install libraries, configure network and security groups, or scale code up or down. The benefit of IaaS is that employees don't have to spend time procuring and installing a physical server; the benefit of serverless is that employees don't have to spend time procuring and installing any server, physical or virtual.

The second economic benefit comes from increased utilization. With serverless, users are charged only for the time they are actively using the platform. With IaaS, a developer needs to have a VM up and running to ensure that code can be executed quickly; thus, there will be times when the VM is idle, and this is sunk cost wasted expenditure. Even with auto-scaling of servers, there is usually a buffer of over-provisioned resources that exist to provide capacity while additional VMs are spun up. And even as the VMs scale, unused capacity continues to ramp up in large steps. This is not an issue with serverless technology. Without the contribution of labor savings, direct expenditure on serverless can be cheaper than on VMs, but only where the number of times the code is executed is under about 500,000 executions per month.

By running a number of scenarios and comparisons, 451 Research's Digital Economics Unit has concluded that the TCO of serverless is likely to be less than of VMs in many workloads. As a demonstration, a one-second-duration function operating for an aggregate three-quarters of a month is cheaper than a VM if serverless saves just 10 minutes of a developer's time. Considering serverless does not require time to provision, configure and manage infrastructure, such time saving is likely.

Even against containers hosted on VMs, serverless seems the better option. Simultaneously executing four container-located functions in a VM over a month is cheaper on direct cost than using a serverless approach. But if more than an hour of a developer's time is needed to manage that VM and its containers (which we believe to be feasible), then TCO becomes cheaper on serverless.

Primed for a price war

The four serverless hyperscalers charge on a monthly basis based on three key metrics: the duration the code is executing, the resources assigned to that code during execution and the number of times the code is executed. As a result, the exact cost depends on all three of these metrics, at the very least. The animation below shows which provider is cheapest (represented by color) for all scenarios up to 10,000,000 monthly executions of a function up to 1GB in size and lasting up to three seconds long. As you can see, the cheapest provider (and the rankings of the others) is highly variable on the precise metrics of the scenario.

AWS, Google, Microsoft and IBM all offer generous serverless free tiers, which give enterprises powerful capability at no charge. In the animation, this free capability is shown as black, where multiple providers are offering similarly priced or free capability due to this free tier. Over time, this freemium model will stimulate serverless experimentation by developers and operations alike, helping them gain skills and ultimately fueling the growth of serverless services. This could be to the detriment of VMs and even containers.

When users' memory requirements match predefined size allocations, we find IBM is cheapest for scripts of 0.1 seconds in duration and Azure is cheapest for scripts of 10 seconds' duration. This is reflected in the animation as the transition from cyan to blue over time. However, IBM also has the smallest granularity, which gives it a major cost advantage across many scenarios by allowing users to choose exact memory requirements without rounding up, thereby reducing wasted capacity. This explains the downward spikes growing as time goes on. At 128MB, Azure is typically cheaper than IBM. But if an Azure user needs only 100MB, she or he still needs to pay for 128MB; if an IBM user needs 100MB, she or he pays for just 100MB, making IBM cheaper in these scenarios.

Considering the similarities in pricing methods between providers, the similarities between offerings and the attraction in the technology, serverless is well poised to undergo a round of price cutting in the future. The new Cloud Price Index serverless benchmark being launched next quarter will be evaluated every three months to help service providers, vendors and enterprises track how this disruptive technology is changing. It will also be included in the CPI Analytical Web Tool, which is being launched next month.

Terms of Use | Copyright 2002 - 2017 CONSTITUENTWORKS SM  CORPORATION. All rights reserved. | Privacy Statement