Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>It depends...</p> <p>There are a couple of dimensions to your question that you need to consider.</p> <ul> <li>Deployment and versioning - Do you wish to be able to version and deploy parts of the system separately? There is an added cost to maintaining separate deployments, but the benefits are increased flexibility and ability to deploy changes in isolation. This is the most important aspect of your decision.</li> <li>Team structure - Do you have multiple teams working on the system? I would highly recommend separating deployment and versioning along team lines.</li> <li>Scalability - Both options are equally scalable from a performance perspective.</li> <li>UI performance - This shouldn't be a primary concern of your deployment design.</li> </ul> <p>How we have approached this problem:</p> <ul> <li>Each system/sub-system has its own deployment and its own storage account. This allows for easy versioning and operational management.</li> <li>Our systems/sub-systems are designed to perform a number of highly cohesive responsibilities.</li> <li>Inter-systems communication is message based (Azure queues for example).</li> <li>Each backend worker role's responsibilities (what we call "Role Services") can be easily moved between different Azure deployment roles via configuration depending upon the required performance characteristics.</li> <li>All backend work should be performance on a worker role. IIS is a terrible host for background processes.</li> <li>UI performance is achieved by materializing all views (either into blob storage or memory). A cache could be used as well.</li> </ul>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload