In the twentieth century, if you wanted to run a multi-user application, you generally had to buy dedicated servers and install them in a data center. These servers could do amazing things, but they were very expensive, and often you’d have to wait many months to get them delivered and installed in a data center.
In the early 21st century, virtualization took off. When individuals or teams needed a server, they would spin up “virtual” servers that used only a fraction of the resources available on a server. Virtualization has been a game-changer in that virtual servers can be deployed in minutes at a fraction of the cost of “bare metal” (i.e., an operating system installed directly on a server without virtualization). The most recent phase of virtualization has been the adoption of containers such as Kubernetes and Docker, which provide ever more fine-grained ability to manage virtualized compute resources.
Serverless computing is new enough at this writing (January 2019) that it remains too early to be able to confidently predict what its impact will be. Amazon Web Services (AWS) introduced Lambda in 2014 while Google introduced Cloud Functions in 2016. Serverless introduces the possibility of technology companies like Ondema providing applications without having to maintain any servers at all. Instead, we purchase services such as compute, databases, and file systems from cloud providers like AWS and Google who, in turn, maintain and improve those services.
Serverless allows Ondema to minimize the amount of time and resources spent keeping servers running in a data center, instead focusing on building and improving the business features our customers need.
We’re especially excited about the benefits of cloud, and the benefits that serverless bring to users of the Ondema Workspace in the area of performance, availability, and scalability:
- High performance: Your application will never slow down because of a bottleneck on servers. The Ondema application programming interfaces (APIs) are end-to-end serverless. The underlying database, identity, compute, and API services are all serverless, and will slowly become faster over time as the underlying network, compute, and storage improve. The underlying data center and compute infrastructure that your Workspace runs on are being constantly upgraded by the cloud vendors we leverage (currently AWS).
- High availability: just as serverless means we don’t have bottlenecks, we don’t have outages because servers go down. Except for brief outages during planned software updates, our Workspaces have been available 24/7 for more than a year. This doesn’t outages won’t occur. AWS outages are infrequent, but they do happen from time to time. High availability is one of the delightful side effects of serverless that makes us increasingly confident that most applications will migrate to serverless in the 2020s.
- High scalability: There are no hard limits on the size of the workloads we can support for our customers. Our APIs scale linearly to accomodate any number of items and any number of users.
At the very least, serverless represents a quantum leap over virtualization. For workloads like the Ondema Workspace that are well-suited to serverless, it becomes possible to deliver services and APIs that run more efficiently and reliably than using virtualization or “bare metal” servers.
Our hypothesis is that this view understates the importance of serverless. Not only will serverless be a better way of delivering the type of business applications that we are all familiar with but, over time, serverless applications will offer features that legacy systems cannot. In this view, the transition from virtualization to serverless is analogous to the transition from feature phones to smart phones, and the 2020s will be the most exciting decade ever for business software.