azuremicroservicesazure-service-fabricazure-cloud-servicesazure-appfabric

Advantages of Service Fabric Microservices vs Collection of Azure Cloud services/web apps


I have a application that can be broken down into multiple communicating services. My current implementation is monolithic and I want to reorganize it so that individual components can be deployed,iterated upon, scaled independently. I see two ways to do this with Azure:

  1. Service Fabric service composed of set of communicating micro-services (stateless, web-api etc.)
  2. A collection of individual Azure Web Apps/ Cloud Services that call each other at the http end points.

Are there any obvious advantages of 1 over 2? Any rule of thumb to chose one over the other would also be very helpful.


Solution

  • I think this page compares it well: https://learn.microsoft.com/en-us/azure/service-fabric/service-fabric-cloud-services-migration-differences/

    I can't tell it better than this.

    There is not really a rule of thumb. Service Fabric might seem more complex but offers some things that Cloud Services / Web Apps don't.

    A quick summary (taken from the link provided):

    Service Fabric itself is an application platform layer that runs on Windows or Linux, whereas Cloud Services is a system for deploying Azure-managed VMs with workloads attached. The Service Fabric application model has a number of advantages: