Most of the discussions in the enterprise user community is focussed more on Containers than on Serverless computing. Part of the reason for this focus on containers is due to the legacy enterprise mindset which is still focussed on the idea of managing servers. Containers are seen as a natural evolution to the legacy idea of servers. But, many enterprises are facing the risk of missing out on the Serverless advantages due to their mindset of “clinging to servers”.
Relative to on-premises and private cloud solutions, the public cloud makes it significantly simpler to build, deploy, and manage fleets of virtual servers and to run applications on them. However, companies today have additional options beyond classic server or VM-based architectures when they take advantage of the public cloud. Although the cloud eliminates the need for companies to purchase and maintain their own hardware, any server-based architecture still requires them to architect their applications for scalability and reliability. This adds high development costs to organizations. Plus, companies need to own the challenges of patching and deploying to those (virtual) server fleets as their applications evolve over time. Moreover, they must also handle the scaling of their server fleets to account for peak load and then scale them down after the load returns to normal to lower their costs—all while protecting the experience of end users and the integrity of internal systems. Idle, underutilized servers prove to be costly and wasteful. Analysts estimate that as much as 85 percent of servers in practice have underutilized capacity. By “clinging to servers”, organizations are wasting their resources and not maximizing their move to public cloud.
Serverless compute services like AWS Lambda, Google Cloud Functions, Zoho Catalyst, Azure Functions, are designed to address these challenges by offering companies a different way of handling the application design, development and deployment, one with inherently lower costs and faster time to market. These Functions as a Service offerings eliminates the complexity of dealing with servers or server based architectures at all levels of the technology stack, and introduces a more fluid pay-per-request billing model where there are no costs from idle compute capacity. Additionally, these FaaS offerings enable organizations to easily adopt microservice architectures that are more modular and resilient. Eliminating the need to manage the infrastructure and moving to a Serverless model offers enterprises dual cost advantages:
- Problems like idle servers simply cease to exist, along with their economic consequences. A serverless compute service like AWS Lambda is never “cold” because charges only accrue when useful work is being performed, with millisecond-level billing granularity. Enterprises can offload the idle compute costs to the cloud provider and this adds up big over a period of time
- Infrastructure management and server operations (including the security patching, deployments, and monitoring of servers) are no longer necessary. This means that it isn’t necessary to maintain the associated tools, processes, and on-call rotations required to support 24×7 server management to ensure uptime. Without the high costs of operations, organizations can direct their scarce IT resources to foster innovation, thereby benefiting the bottom line
Clearly, moving to Serverless computing can help enterprises save costs, be agile and ensure continuous innovation. The biggest roadblock to achieving this nirvana is their legacy “clinging to servers” mindset. If enterprises can overcome this legacy mindset and embrace Serverless, they can face the needs of modern economy with more confidence.