Azure Service Fabric

Apart from the deprecated Azure Cloud Services there are three main options to create microservices on Azure:

  1. Azure Container Service
    Microsoft’s implementation of open-source container technologies based on Docker.
  2. Azure Service Fabric
    Allows focusing on business objectives and not infrastructure.
  3. Azure Functions
    Another viable option to build microservices, Allows you to write functions in a language of your choice directly on the Azure portal. Each function essentially becomes a mini version of a microservice.

In this lesson, let’s take a closer look at Azure Service Fabric which is the most popular option to create microservices on Azure.

What is Azure Service Fabric?

Azure Service Fabric is a Microsoft’s cloud-based Platform-as-a-Service(PaaS) offering to build and deploy microservices-based applications. It is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices and containers.

Why Azure Service Fabric?

  • Azure Service Fabric provides developers a single platform that fixes many of the issues associated with building cloud-based distributed applications.
  • Service Fabric is a platform that makes it easier to build and deploy microservices-based applications, handling both stateful and stateless operations.
  • Service Fabric will run on any Windows system and there’s also a Linux version, which means that it’s portable across multiple cloud environments including Amazon Web Services, OpenStack, and VMware.
  • Service Fabric provides lifecycle management capabilities to microservice-based applications. The microservices are hosted inside containers that are deployed across the Service Fabric cluster. Using containers instead of virtual machines means a massive increase in density and greater still density can be achieved by moving from containers to microservices in these containers.

Capabilities of Service Fabric

The key capabilities of Service Fabric include:

  1. Develop scalable microservices
  2. Microservices on Service Fabric can be stateless or stateful.
  3. Write code once and then deploy it to any Service Fabric cluster.
  4. Deploy applications quickly and at a high density.
  5. Upgrade applications independently.
  6. Monitor the health of your application and set policies for automatic repairs.
  7. Manage the life cycle of your applications without any downtime.

Ways to create a microservice on Azure Service Fabric

  1. Reliable Services
    This is the simplest way to create a microservice with Service Fabric. It is similar to creating the classic windows service. It is divided into two subtypes. Stateless Services, which many ways looked and acted as a console application and Stateful microservices which are state of the art, self-contained microservice with its own transactional replicated storage.
  2. Reliable Actors
    Virtual actor design pattern and it is built on top of the stateful Reliable Service framework. Suitable for handling the massive amounts of client requests with large compute and scale.
  3. Guest Executables
    Ability to take any application, written in any language to run it with Service Fabric after a few configuration changes.

You might be interested in the following courses:

Course Category: Microsoft Technologies

Back to: Microservices with C#, .NET Core and Azure > Communication