Serverless, also referred to as Functions-as-a-Service, or event driven computing, is different than either virtual machine or regular container-based cloud computing options. With serverless, there is no need to have a long running server instance for compute or container. Rather with the serverless approach, whenever there is an event trigger, a function executes.
The advantage of serverless is that it enables highly optimized functions that only run when needed. This offers organizations significant cost optimization opportunities, in contrast to other cloud computing options.
How To Choose a Serverless service
There are multiple serverless frameworks and services in the market today that organizations can choose from. When looking to select an appropriate serverless service, there are several key things to consider.
Existing cloud resources. It’s often easier to stick with the same cloud provider already in use for other services, for serverless, as the same security, identity and dashboard controls are used, making it easier to adopt.
Connection to static resources. Having easy pre-built connection options to static (non-serverless) options, such as storage and databases is important. Serverless is only one component of a larger application.
Portability. Serverless could potentially become a form of lock-in; as such it’s a good idea to have a service where functions are portable.
Cost. Going serverless can be a real cost savings, so be sure to identify a provider that offers the best pricing to fully benefit from the opportunity.
In this Datamation top companies list, we spotlight the leading serverless services.
- AWS Lambda
- Cloudflare Workers
- Google Cloud Functions
- IBM Cloud Functions
- Microsoft Azure Functions
- Oracle Functions
- Vendor Comparison Chart
Value proposition for potential buyers. Amazon Web Services (AWS) Lambda helped to invent the entire serverless space and remains the standard against which all other services are measured against.
- Lambda is an obvious choice for those organizations that have already invested resources and workloads in using AWS as a public cloud provider.
- Integration with broader AWS portfolio including storage, database and streaming is a key differentiator, providing easy access to existing resources.
- Users just need to decide how much memory is needed for a function, while AWS autoscales and provisions the right about of bandwidth and processing power.
- Subsecond metering provides very precise billing with AWS only charging for every 100ms of code execution.
Value proposition for potential buyers. Cloudflare is perhaps best known for its content delivery network, but with Workers, the company enables serverless capabilities to run with low latency, which makes it a good choice for applications where responsiveness at the edge is important.
- Support for the WebAssembly has recently been added to Workers, providing a new approach that can enable multiple languages to be compiled and delivered in a serverless approach.
- Cloudflare also differentiates Workers with its distribution network providingh the ability to run across all 193 Cloudflare datacenters, which can improve responsiveness and lower latency.
- For stateful data connections, there is the Workers KV service which provides a key-value store that connects with serverless function to persist and store data.
Value proposition for potential buyers. For those organizations that are already using Google Cloud, the Cloud Functions service is an obvious choice, providing integration with other Google services and a familiar interface.
- A key differentiator is that Cloud Functions can be triggered by events from existing Google Cloud Platform resource, or even Google Assistant, providing a straightforward approach to using serverless.
- Autoscaling of functions is built-in, so as demand grows, Google automatically allocates the required level of resources to execute the function.
- Pricing is metered to the nearest 100 milliseconds of function execution.
Value proposition for potential buyers. IBM Cloud Functions is well suited to organization seeking a serverless approach that is based on the open source Apache OpenWhisk project.
- Based on OpenWhisk, IBM Cloud Functions provides an open, portable serverless model that can run in IBM’s cloud as well as other deployments options, including on-premises.
- Looking beyond just function execution, IBM has integrated performance monitoring to help organizations track how their serverless deployments are operating.
- Events can be triggered from other IBM Cloud services or via a REST API, which makes the service more extensible.
- A key differentiator is the integration with the IBM API Gateway which can help to manage the API endpoints that can in turn be used to trigger a function.
Value proposition for potential buyers. Backed by multiple vendors, the promise of Knative is that it could one day soon provide a standard way to have serverless functions across multi-cloud deployments
- Knative is an open source project that provides a serverless framework that runs on top of an existing Kubernetes deployment
- Among the backer of Knative are Red Hat, Google, IBM and SAP who have all pledged to support the project as well as launch commercial services.
- Knative currently is not suited for organizations that want a fully managed approach as it requires some setup, but it is an interesting option for organizations to consider, if they are already running Kubernetes and want to deploy their own serverless framework.
Value proposition for potential buyers. Azure Functions is an ideal solution for developers that are already using Visual Studio Code, providing a simple path to serverless function development and deployment.
- A key differentiator for Azure Functions is how it works with a DevOps workflow and the Azure Pipelines service for continuous integration and continuous delivery (CI/CD)
- The Durable Functions capability is another differentiated capability, enabling developers to have stateful functions, that can include progress checkpoints.
- Setting up functions is simplified by Microsoft with different connectors that make it easier for developers to define declarative workflows.
- Monitoring is integrated via Azure Application Insights that can be used to help troubleshoot any performance issues.
Value proposition for potential buyers. Based on the open source Fn Project, Oracle Functions is good choice for organizations looking for a container based option for serverless deployment.
- A key differentiator for Oracle Functions is the fact that all functions are packaged as docker containers, which can make it easier for users to build and deploy.
- The open source Fn Project base means that there is less chance of lock-in as users can build functions that will run in the Oracle Functions service, or in any other Fn Project based deployment.
- Another key portability aspect for Oracle Functions is that it supports the nascent CNCF CloudEvent specification, which is an effort create a standard for serverless functions that will be supported by multiple cloud providers.
- Autoscaling and integration with the broader Oracle Cloud infrastructure platform, providing additional capabilities including identity and access control
Integration with broad AWS cloud portfolio.
There are two elements to Lambda pricing:
Requests – First 1M requests per month are free.
Duration – First 400,000 GB-seconds per month, up to 3.2M seconds of compute time, are free.
Edge deployment out to 193 datacenters for low latency
Free tier up to 100K requests Unlimited tier $0.5 per million request with a minimum charge of $5 a month
Google Cloud Functions
Cloud Functions can be triggered by events from existing Google Cloud Platform resource, or even Google Assistant.
Pricing is made up of three components:
Invocations – $0.4 per million
Compute time – $0.00001 per GHz-Second
Networking – $0.12 per GB
IBM Cloud Functions
Based on the open source Apache OpenWhisk project.
Pricing – $0.000017 per second of execution, per GB of memory allocated
Multi-vendor open source effort based on Kubernetes.
Deployed on top of an existing Kubernetes cluster.
Microsoft Azure Functions
DevOps workflow and the Azure Pipelines service for continuous integration and continuous delivery (CI/CD).
Pricing – $0.20 per million executions
Based on the open source Fn project.
First 2 million invocations per month are free. Over 2 million a month US$0.0000002 per invocation.