Azure Workshop

What a great workshop Microsoft put on today at their Paddington office. The topic? Serverless, Microservices and Containers on Azure.  The day started with the usual pleasantries of introductions and agendas then rapidly dived into microservice architecture and concepts.   

The workshop continued with what would be the topic of the day: an application, created by Ben (cloud architect & evangelist), and the journey it would go on to see it re-architected and re-platformed for the different services available on the Azure cloud platform. 

The application is quite simple:

It serves one purpose: to provide a feedback mechanism for Microsoft hosted events so attendees like myself can help them improve. 

It started out as a simple single page application (SPA) built with: 

  • Angular5 
  • Node.js 8 
  • Express 
  • Cosmos DB for persistence 
  • Azure Functions+Congnitive services for feedback sentiment analysis 
  • Power BI for reporting.   

CANE stack? Maybe. The first incarnation of the application was deployed on Microsoft's Platform as a Service offering (PaaS) called App Service. As you can see by the following diagram, it's quite far removed from the underlying infrastructure: 

The next section of the workshop was both surprising and interesting: Service Fabric. 30% compute cores on Azure are running Service Fabric. That makes it one of the most used container orchestration platforms on the planet. It actually hosts a good proportion of Microsoft's own SaaS offerings, hence why it is so heavily used. What is so interesting about Service Fabric is just how reliable it is. You cannot have less than a 5 VM cluster powering it. This is how they can do rolling upgrades whilst still guaranteeing high availability.  

Interesting fact: if you want your apps and services to run on the latest/fastest hardware in an Azure datacentre, run it on Service Fabric. It is about performance as much as it is about reliability. 

 Stateful services are a neat addition. It is possible to have a microservice that stores its data in a Reliable Collection without a DB. The system is so robust you do not even need a database for persistence. That raised considerable discussion, and many eyebrows. 

Would you use Service Fabric for an application like this? No. It's designed to host your entire application estate, preferably broken up as microservices and optionally containerised. 

The afternoon started with container instances and the container registry and quickly became a deep dive into how this application would run in Azure's latest container offering: AKS, or Kubernetes as a Service. Microsoft were keen to point out how the Kubernetes APIs are completely unmodified, meaning you can move your cluster to another cloud provider, should you wish to (they were quick to point out that this is not the case with the new AWS equivalent offering). 

The day ended on Serverless. In the application in question, Azure functions are used to call out to the cognitive service for text analysis and score the sentiment of the feedback comments. I was pleased to see durable functions getting a mention. They look incredibly useful for orchestration. 

The full slides for the day live here: https://github.com/dxuk/AzureWorkshops/tree/master/Azure%20Workshop%2018%20Jan%202018%20-%20microservices 

A big thank you to David, Ben and Ross from Microsoft for putting on such a great day!

Thanks for sharing. Really useful feedback and commentary!

Like
Reply
Like
Reply

To view or add a comment, sign in

More articles by Rich James

  • MCP Apps vs A2UI: Better Together

    Recently I set about building a POC named AIBank, a demo AI-powered banking app that taught me something important…

  • Serverless Azure with Angular2

    It is rare I get to lose myself in coding ventures since moving in to management. Sometimes though, you're presented…

  • Excited by the Microsoft Tech Summit

    Whilst the Azure platform has held high hopes since its unveiling back in 2008, it’s never managed to completely wow…

    1 Comment

Others also viewed

Explore content categories