Compare Serverless Products

Estimates based on serverless:talent research team. Source: Product's Website

Topic
About Product

A "Cloudflare Worker" is JavaScript you write that runs on Cloudflare's edge. A "Cloudflare Service Worker" is specifically a worker which handles HTTP traffic and is written against the Service Worker API. Currently, this is the only kind of worker we've implemented, but in the future we may introduce other worker types for certain specialized tasks.

It can do anything and everything. You're writing code, so the possibilities are infinite. Your Service Worker will intercept all HTTP requests destined for your domain, and can return any valid HTTP response. Your worker can make outgoing HTTP requests to any server on the public internet.

Azure Functions allows developers to take action by connecting to data sources or messaging solutions thus making it easy to process and react to events. Developers can leverage Azure Functions to build HTTP-based API endpoints accessible by a wide range of applications, mobile and IoT devices.

Pricing

1. Free plan
The Workers Free plan makes it easy to experience the Workers ecosystem without a commitment. The Free plan provides access to Workers and Worker KV, giving you the tools to start building your service. Learn about the Free plan limits.

2. Paid plan
To avoid the Free plan limits, you can subscribe to the Workers Paid plan for a minimum $5 USD per month for an account.

Azure Functions consumption plan is billed based on per-second resource consumption and executions. Consumption plan pricing includes a monthly free grant of 1 million requests and 4,00,000 GB-s of resource consumption per month per subscription in pay-as-you-go pricing across all function apps in that subscription. Azure Functions Premium plan provides enhanced performance and is billed on a per second basis based on the number of vCPU-s and GB-s your Premium Functions consume.

Performance

Cloudflare Workers respond very quickly, typically in under 200 milliseconds, when cold starting. In contrast, both Lambda and Lambda@Edge functions can take over a second to respond from a cold start. The differences are largely due to the fact that Cloudflare Workers run on Chrome V8 rather than Node.

Azure supports multiple functions concurrently provided operations take place simultaneously within a single data partition. The number of concurrent activity and executions is capped at 10X depending upon the number of cores in the VM level. The execution time limit is 600 seconds or 10 minutes.

Technical Details

Cloudflare Workers are written in JavaScript, executed using the V8 JavaScript engine (from Google Chrome). It choosed JavaScript and V8 for two main reasons.

1. Security

The V8 JavaScript engine is arguably the most scrutinized code sandbox in the history of computing, and the Chrome security team is one of the best in the world. Moreover, Google pays massive bug bounties to anyone who can find a vulnerability. (That said, we have added additional layers of our own sandboxing on top of V8.)

2. Ubiquity

JavaScript is everywhere. Anyone building a web application already needs to know it: whereas their server could be written in a variety of languages, the client has to be JavaScript, because that's what browsers run.

Azure Functions claims to scale 200 instances for a single Node.js function, it fails to do so in practice. When put to test, it was only able to scale 10 function instances concurrently for a single function.

It took a long time for the Azure instances to launch despite 1.5 GB of memory being allocated to them. Median cold start latency was observed at 3640 ms in Azure.

Supported Languages
Javascript,Python,TypeScript
Javascript,Python,Java,TypeScript