Menu Home

What is Serverless?

At it’s core Serverless has a simple concept: outsourcing your technical infrastructure and operations to the extent that you can largely concentrate on your app’s code or business logic. The hardware, operating systems, servers, virtualisation, containers etc. are all fully managed by a third party such as Microsoft Azure. Your development is then a matter of creating event driven functions that collaborate with each other and other services via triggers, HTTP, APIs and SDKs. This results in a DevOps experience that is generally much lighter on the Ops side.

With a Serverless architecture, you define your structure and logic in code (often in a mobile or web app), declarative configuration or through GUI tools.  Once deployed, a big win is that scaling up and down of resources is automatically handled for you, according to demand. Services available to you include compute, storage, authentication and authorisation, media manipulation, AI and much more through 3rd party SaaS.

Furthermore, compute and some other resources are charged on pay per use (PAYG) subscription so you only pay for what actually gets used, not continuously for the [guessed] maximum capacity. Combine this with detailed reports of what exactly each function is costing and you have a powerful new dynamic way to map from costs to business models, as @Swardley reveals in this detailed post.

It’s no wonder there’s so much interest in Serverless right now. For example, an exciting possibility is the extension of existing services and apps via web hooks or cloud scripting.

In addition to so called Functions as a Service (FaaS) common to all Serverless offerings, Azure also offers Workflow as a Service with LogicApps. This provides as high level way to define the glue or mash-up flowchart for your logic with connectors to services form Azure and 3rd Party SaaS services. It also connects to Functions to provide more complex logic.

This post from Build Azure provides a good introduction to Serverless with an Azure flavour.