The cloud computing market has been growing steadily over the last decade. But it experienced an exponential boom in the past two years owing to more companies adopting a completely digitalized environment in response to COVID-19 and the shift to remote work. The latest trend in the cloud computing world that has been gaining popularity is serverless computing. Recently, one of the top cloud computing companies, DigitalOcean, acquired a serverless computing provider, Nimbella, clearly showing that “serverless” is the future.
What is serverless computing?
Serverless is somewhat of a misleading name because there are actual servers that power “serverless” computing. However, the term points to what makes “serverless” innovative and efficient. Serverless computing helps developers build an application or website without having to worry about the server at all. It is “serverless” in essence.
DigitalOcean, Nimbella and the acquisition
As the serverless space gains momentum, New York-based cloud provider DigitalOcean hops on the bandwagon by acquiring serverless service provider Nimbella on Sept. 7. DigitalOcean is a cloud computing vendor that offers infrastructure-as-a-service (IaaS), allowing businesses o scale themselves. They target entrepreneurial software developers and small-scale startups instead of enterprise clients as their potential customers. Nimbella, on the other hand, is a cloud-agnostic serverless platform designed specifically to help companies and developers optimize the process of adopting a serverless computing infrastructure. It can adopt a multicloud strategy and can run on private, public, and hybrid cloud and can be deployed from anywhere. This acquisition will allow DigitalOcean to appeal to a broader set of developers — those who want complete control to manage their cloud infrastructure and those who only want to focus on developing their products. It also expands DigitalOcean’s capabilities in cloud-native environments by eliminating operational complexity.
Apache OpenWhisk vs. Lambda
Nimbella is based on Apache OpenWhisk, an open-source serverless cloud platform that performs functions in response to events at any scale. It manages infrastructure, servers, scaling, and configuring traffic surges using Docker containers. Since Apache OpenWhisk is open source, it can be deployed on-prem or on the cloud without any hassle. It supports a wide range of languages and is an enterprise-based paradigm that supports thousands of concurrent triggers and actions. Now let’s compare this directly with Lambda and why it could be better.
Unlike Lambda, OpenWhisk is an open-source solution. This means it is community-driven so that anyone can write up a feature from scratch if it doesn’t already exist, and they can share this for everyone to use. On the other hand, Lambda is a proprietary product, so one would have to depend on the organization to make custom features to meet their requirements.
Apache OpenWhisk does not have a vendor lock-in. Therefore, the app/code/tech stack doesn’t get tightly coupled with a third-party vendor tech. This helps avoid facing technical issues even if the vendor service shuts down.
Assessing the competition: Cloud vendor offerings
AWS Lambda is the most well-known of the serverless offerings. It is credited with bringing serverless computing to the masses. Lambda is event-driven, which means that when a code is uploaded, it executes the task in milliseconds by allocating compute execution powers and running the code based on incoming requests for any scale of traffic. The usage billing depends on used memory, execution, number of requests, and duration and is literally rounded to the nearest millisecond.
Microsoft’s Azure Serverless is mostly on par with Lambda. The two points of difference are that Azure Serverless has a multicloud strategy and supports the greatest number of languages out of all the serverless offerings. It also allows long-running stateful functions.
Google serverless computing solution, Cloud Functions, is a multicloud strategy that helps developers upload their code in ways that are not restricted to a zip file like in Lambda. It also has no file size limit.
Oracle Fn is an open-source platform that can be deployed on-prem or on the cloud. Most of its features are on par with other serverless offerings except that it presents a visual representation of the functions within your system through its “Fn Flow.”
Apart from the big cloud vendors discussed above, many startups are offering competitive serverless options. Let’s look at a few of them.
1. The Serverless Framework
The Serverless Framework is an open-source and free-to-use tool that helps make working with serverless applications quick and easy. It builds, compiles, packages, and deploys code with a simple command. Serverless is cloud-agnostic and supports multiple languages. Built on top of AWS Lambda, it helps deploy AWS Lambda functions along with the AWS infrastructure they require efficiently. When an event for Lambda is defined in the Serverless Framework, it automatically creates the infrastructure necessary for that event to configure the Lambda Functions to listen to it. It doesn’t just deploy functions and events that trigger them. It also deploys the infrastructure the functions depend on.
Iron.io was acquired by Xenon Venture, a private equity firm, in 2017. Iron.io’s IronFunctions is an open-source serverless platform that can be run anywhere. It lets developers create APIs and functions that combine synchronous and asynchronous functions in applications. IronFunctions supports any language and can import functions directly from Lambda. One of its most important features is that it’s cloud-agnostic, similar to Nimbella.
Fission is an open-source serverless version of Lambda released by Platform9. It supports a wide variety of languages and operates on just the code, thus eliminating the need to manage Docker containers and registries. A unique trait that sets Fission apart from its competitors is that it combines Kubernetes and serverless, which allows it to run wherever there is a Kubernetes cluster — in the cloud, on-prem, or on your personal computer system. It helps create a serverless backend for web and mobile applications and write functions to be mapped to HTTP routes.
Stackery is a secure serverless platform that helps design, develop, deliver, and manage modern applications and serverless infrastructure through a visual interface. Stacks have a function and an object store that can be triggered by events. In Stackery, these stacks are apps consisting of interactions between cloud resources specified in a configuration file, and stack codes are stored in a Git repository. This means that application workflows are preserved when working within the app. Stackery also helps manage all deployed stacks from a shared dashboard. The one thing that sets it apart is that it makes serverless visual. It helps developers visually construct serverless applications and designs using the Stackery Canvas, which is then deployed directly to AWS.
Macrometa is a serverless data computing service that provides a geo-distributed stateful serverless NoSQL database that offers low latency for applications. It helps the developer access everything required to build a real-time event-driven application seamlessly in one place. What sets it apart is that it is data-centric since it focuses on the backend by getting performance gains and other factors from the developers and processing data streams in real-time.
The market for serverless computing is vibrant and exciting, with vendor offerings from the big leagues and startups. There are various more options available other than the ones mentioned in this article. And in a market ripe with competition, DigitalOcean would have to go above and beyond to make a difference and get to the top.
Serverless is hot for a reason
The serverless paradigm is radically changing the way cloud applications are developed. It speeds up the process of development by eliminating the need for the developer to be worried about the infrastructure. It’s almost like putting blinders on a horse to get them to stay focused on their tasks. With benefits that optimize a company’s performance by improving productivity and reducing development costs, the security concerns of not having complete control of every aspect of your cloud network is the singular fault exhibited by serverless computing. It will be interesting to see what the future of this model will be and how long it would take for organizations to make the shift to a better, efficient, and cost-effective way of computing.
Featured image: Pixabay