Microservice design options - Bhushan-Jagtap-2013/AzureServiceFabricExamples GitHub Wiki

Overview

  • Azure service fabric is microservice framework and container orchestrator.
  • Solves following problems:
    • Service instance communication
    • Service discovery
    • Telemetry
    • Provision, rolling upgrade
    • Testing locally
    • Manage downtime and instance failure
    • Scaling in and out

Kubernetes vs Service Fabric

  • SF only runs Linux experiment as of now.
  • Kubernetes is container only. vs SF can run containers, Native services, Guest Executables.
  • Both are language agnostic.
  • SF allow programmatic control using java and .net
  • SF provide out of box programming model. SF support actor programming model.
  • Handling state in SF is easy. Support stateful applications.
  • SF recovers failed nodes in 10 to 15 seconds vs Kubernetes takes 5 minutes.
  • Cost of both system is same.

Azure Functions

We can write microservice with Azure Functions as well.

  • React to external events
  • Can be called as REST service
  • Run on a scheduke
  • Event driven
  • Good alternative for ASF and AKS
  • Easiest to start with
  • Easy to perform background tasks