Menu Home

Serverless Schmerverless: what do we mean by “serverless”?

[Update 25 Jan 17: I just had to add the image from Swardley]

The debate about the name “serverless has calmed down a tad but may never completely go away. However, we need to move on and so I thought I should state what we have in mind here at Azure Serverless. The main reason for doing so, is that rather than just hoping “the entire silly thing will go away” it will help shape what we post about here.

-The entire history of the PaaS vs Serverless debate, in one simple graphic

 

Firstly, lets say one thing: did anyone ever complain about “Wireless” involving lots of wires? Both in the user’s radio receiver and the transmitters, studios etc…. Of course not, it’s a matter of point of view. With Serverless, as with Wireless, from the user perspective, we are largey free of the need to manage or otherwise worry about the pesky thing in question 🙂 Move along please there’s nothing to see here….

When we categorise developer and deployment infrastructure we soon realise there is a graduated contimuum, with certain points on the spectum being identified and named. But, those terms end up getting used for a broad subspectrum of closely related concepts and they don’t always cleanly apply to a specific implementation. What’s important is the specific features provided and how they help us get stuff out to users.

Thus our ‘hosting’ continuum stretches from self hosted boxes in the office, though remotely installing our favourite applications on 3rd party managed hardware and software, to fully managed apps where we supply a little config or perhaps some macros if we feel brave.

Not suprisingly it’s the same when we look at the skills required by those creating and managing software used by people. At one end we have pure jobbing developers who never see their code in production, to full time SysOps who never produce any code but a very skilled in setting parameters etc.

When exploring development and deployment environments deployed to the the cloud we have a range of choices in how much we outsource to others, including the nice Microsoft folks providing the Microsoft Azure services.

We can work with a bare machine (aka IaaS eg Azure Virtual machines), or have the Operating System and other platform software such as node.js  managed for us (aka PaaS eg Azure Web Apps). Going further along the continum we can simply provide code fragmets that run in a managed context (#FaaS, Azure Functions). Then, there is Azure Logic Apps (Workflow as a service WaaS) which abstracts code away to configuration (almost SaaS).

From another angle we have various services like SQL databases managed for us. Plus data or object storage. In addition to use from backend code, a client app running in a webbrowser or a mobile app can use these services. Additionally in this context, we have access to useful services for managing APIs or notifications (BaaS, eg Azure API Apps). Often both the back end service and client libraries are made available for our use.

Oh, then there’s the provisioning facitilies provided for scaling out our running software horizontaly and vertically. We can mange that ourselves at one end of the scale. Or have autoscaling at the other. Fortunately, with cut offs in the advent of misuse.

Containers are yet another aspect and depending on your perspect might be little more than an abstraction away from bare VMs (IaaS++) to somehing more akin to PaaS if you use and extend pre existing images.

So given this rich ecosystem, what do we mean by “Serverless”? Well it’s certainly well into the managed end of the spectrum. Definitely Azure Functions (FaaS) and LogiApps (WaaS)Certainly, the App Services PaaS level service will be covered. Given AzureFunctions is an open source framework running on WebJobs we may include that layer as well. And also, other Azure BaaS services like Storage (Queues, Blobs) and databases (SQL, DocumentDB) which are important in many a solution. Ditto Authenticon services. And since LogicApps has connectors to SaaS we might include some of these.

Regardless of Swardley’s image above, we may also include the more managed aspects of  containers (Azure Container Servers, ACS).

To be honest we may post on pretty much anything that gets us nearer to working on useful solutions and not having to rummage around the lower reaches of the stack, either as Devs or SysOps (OK, DevOps).

Given this is such a fast evolving space we would not want to be too constrained so as to exlude newer technologies that are certain to appear. Thus, the previous paragraph is our working defintion for our posts and tweets. Enjoy!

PS Apologies if for you, Serverless === FaaS. You’ll need a narrow band filter for our content.

Categories: Uncategorized

Tagged as:

steve@opendirective.com

Leave a Reply