Application Architecture Guide Published for Microsoft Azure Cloud
Microsoft has published an Azure Application Architecture Guide to help cloud developers keep pace with new styles, approaches and industry trends while planning their projects.
The company said the guide helps developers tasked with shipping consumer-facing apps at increased velocities while facing many new choices provided by initiatives such as microservices, containers, serverless workloads and so on.
While providing new opportunities for developers, these new services and industry trends also spark more questions for developers, such as:
- Which architecture should I choose? Microservices? N-Tier? How do we decide?
- There are many storage choices, which one is the best for me?
- When should I use a serverless architecture? What's the benefit? Are there any limitations?
- How can I improve scalability as well as resiliency?
- What's DevOps culture? How can I introduce it to my organization?
The new Azure Application Architecture Guide helps answer those questions by following proven practices gleaned from customer engagements, Microsoft said.
Rather than being a how-go guide for leveraging individual Azure services, it targets developers, architects and operations teams, attempting to help them understand common patterns to apply when planning and creating an Azure-based app.
The document provides a series of steps to follow, along with supporting design guidance, in which developers choose an architectural style, technology options (compute, storage) and cloud design patterns, while following 10 high-level design principles and focusing on the five pillars of software quality: scalability, availability, resiliency, management and security.
The guide is organized into segments that address various topics that address the above. In the architecture styles section, for example, it discusses in detail options such as:
- N-tier architecture style
- Event-driven architecture
- Big data
- Big compute
Each section provides guidance on when to use each option, its benefits, its challenges, best practices and additional considerations.
Microsoft intends that the downloadable eBook helps developers and their teams adapt to the new cloud development world.
"The cloud is changing the way applications are designed," the guide's site says. "Instead of monoliths, applications are decomposed into smaller, decentralized services. These services communicate through APIs or by using asynchronous messaging or eventing. Applications scale horizontally, adding new instances as demand requires.
"These trends bring new challenges. Application state is distributed. Operations are done in parallel and asynchronously. The system as a whole must be resilient when failures occur. Deployments must be automated and predictable. Monitoring and telemetry are critical for gaining insight into the system. The Azure Application Architecture Guide is designed to help you navigate these changes."
David Ramel is the editor of Visual Studio Magazine.