Design of Application in Azure Service Fabric
<p>I need help how to think about designing our application to fit into the new Azure Service Fabric template.</p>

<p>Today we have an application built on Azure Cloud Services. The application is built around DDD and we have separate bounded contexts for different subsystem parts of the application. The bounded contexts are today hosted in one worker role that exposes these subsystems using a single WebAPI.</p>

<p>Additionally we have one Web Role hosting the web frontend and one Worker Role processing a background queue.</p>

<p>We strive to move to a micro services architecture. The first thing I planned to do was to extract all bounded context into their own API-hosts. This will result in 5-10 new WebAPI services supporting our subsystems.</p>

<p>To my question, should all of these subsystem/bounded context/API-hosts be their own Service Fabric Application or a service within a single Service Fabric Application?</p>

<p>I've read the documentation, found here <a href="https://azure.microsoft.com/sv-se/documentation/articles/service-fabric-application-model/">Service Fabric Application Model</a>, over and over and I can't figure out where my services fits in.</p>

<p>We want the system to support different versions of the services, and the services should also be possible to scale different from another. There might even be a requirement to have one micro service to run in a larger VM size then the rest.</p>

<p>Please can someone guide me in which suits my needs.</p>