Azure Cellular Architecture: Scaling with Cosmos DB Change Feed and Service Bus
The article presents an Azure-based cellular architecture design that enhances system resilience by isolating services into independent failure domains called 'cells'. It uses Azure Cosmos DB Change Feed, Azure Functions, and Service Bus within a modular, repeatable infrastructure pattern to contain failures and prevent cascading outages. The approach relies on Terraform for deployment and routes requests to specific cells based on partition keys like TenantId to ensure fault isolation.
- ▪The architecture uses cellular design to isolate failures by deploying multiple identical infrastructure stamps known as 'cells'.
- ▪Each cell includes its own Cosmos DB account, Service Bus namespace, and Azure Functions to ensure complete resource isolation.
- ▪A routing layer directs incoming requests to the appropriate cell based on a partition key such as TenantId.
- ▪Terraform is used to define and deploy the reusable cell module, ensuring consistent and repeatable infrastructure provisioning.
- ▪The pattern minimizes blast radius from issues like 'poison pill' events or regional outages by containing them within a single cell.
Opening excerpt (first ~120 words) tap to expand
try { if(localStorage) { let currentUser = localStorage.getItem('current_user'); if (currentUser) { currentUser = JSON.parse(currentUser); if (currentUser.id === 2686804) { document.getElementById('article-show-container').classList.add('current-user-is-article-author'); } } } } catch (e) { console.error(e); } Cláudio Filipe Lima Rapôso Posted on Apr 30 Azure Cellular Architecture: Scaling with Cosmos DB Change Feed and Service Bus #azure #cosmosdb #azurefunctions #terraform 1. Introduction Scaling cloud-native systems often results in a massive, highly interconnected web of services where a single corrupted payload or regional brownout can trigger a global outage.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at DEV.to (Top).