Will serverless fulfill the expectations of cloud?
Author: Henry Been, Independent DevOps & Azure architect
The term cloud computing became popular somewhere halfway the first decade of this century, short before the launch of Amazon S3 and EC2. In the little over 10 years since, we have come a long way. However, I believe we still have to uncover the full potential of cloud computing.
Although not part of the formal characteristics of cloud computing, there have been are two simmering expectation of cloud computing that we have failed to meet up to now:
Pay per use:
Can you imagine every household being billed 151MWh of electricity, for having 3 25A/230V fuses, instead of the 3MWh the average household uses? Probably not. Neither do you call your electricity supplier for extra capacity, before turning on the water cooker. Electricity is just there when you need it. Business want the same to hold for the use of cloud computing. They don’t want to pay for a guaranteed level of availability, they want to pay for actual usage and expect that they can increase or decrease usage and that their demand is automatically being met.
Focus on business value:
Businesses have an expectation that moving to the cloud will allow them to spent less time on creating (or maintaining) IT infrastructure like webservers, queues or load balancers.
Many services that are currently available in the cloud have failed to deliver to some extent, on these two hidden expectations. We are still creating and maintaining infrastructure (although through API’s) and still choosing how much power (the number and size of virtual machines) to buy for our applications.
The serverless paradigm might help meet these two hidden expectations.
With Azure Functions, AWS Lambda and Google Cloud Functions being billed per invocation and only for the memory and CPU cycles used, we are now able to pay only for what is really used. Also, both platforms can match sudden changes in demand nearly instantaneous. (Note: this is an area of ongoing work since there are improvements to be made.) But even more important, these new offerings like Functions/Lambda or Simple Workflow Service/Logic Apps enable developers to get business solutions up and running within minutes, without ever worrying about the underlying servers. Which, of course, are still there…