Serverless computing is one of the new hottest trends in modern software development. Conceptually, serverless computing leverages micro-containers o execute atomic functions as response to specific events.
In just a few years, serverless computing services have become a first class citizen of major platform as a service(PaaS) such as AWS, Azure, Bluemix and Google Cloud. AWS was the first PaaS platform to incorporate serverless computing capabilities with the release of its Lambda service. Inspired by functional programming artifacts, AWS Lambda remains the undisputed leader in the serverless architecture space but is seen increasing competition from other PaaS providers as well as from startups such as PubNub.
What is Causing the Popularity of Serverless Computing?
There are several factors contributing to the raising popularity of serverless architecture. From the simplicity of the implementation model to the influence of other high growing trends such as the internet of things (IOT), several factors are contributing to establishing serverless models as one of the architecture styles of modern software applications.
Code Without Infrastructure
Abstracting infrastructure from code has always been one of the promises of cloud computing but serverless architectures take this to a complete different level. Serverless solutions require no dedicated infrastructure or VMs. The underlying platform will dynamically provision micro-containers required to run specific business logic as a reaction to specific events.
A New Dimension of Multi-Tenancy
Architecturally, serverless architectures represent an evolution of the multi-tenancy paradigm. In some context, we can say that serverless architectures provides a level of abstraction of multi-tenant infrastructure focused on the execution of atomic functions.
IOT solutions are the prototypical use case for serverless architectures. The event-driven and continuously-evolving nature of IOT solutions fits perfectly the serverless model in which new functions are added and executed in response to specific events. Some of the most popular IOT solutions like Amazon Echo already rely on serverless architectures.
Lower Entry Point for Cloud Developers
Serverless stacks have quickly become one of the most popular technologies in PaaS stacks. Part of the reason for this phenomenon is the intrinsic simplicity of serverless platforms that allow a developer to start using a cloud platform by simply writing individual functions.
A Viable Cloud Portability Model
Building multi-cloud solutions have been a permanent challenge for companies embracing PaaS stacks. The serverless model provides a viable reusability mechanism for cloud solutions as most of the platforms in the market have a similar feature set and functions and events from one platforms can be easily transferred to a different PaaS while maintaining the core architecture of the solution consistent.