If your team is investigating ways to design applications for the cloud, this concise book introduces 11 architecture patterns that can help you take advantage of cloud-platform services. You'll learn how each of these platform-agnostic patterns work, when they might be useful in the cloud, and what impact they'll have on your application architecture. You'll also see an example of each pattern applied to an application built with Windows Azure.
The patterns are organized into four major topics, such as scalability and handling failure, and primer chapters provide background on each topic.
With the information in this book, you'll be able to make informed decisions for designing effective cloud-native applications that maximize the value of cloud services, while also paying attention to user experience and operational efficiency.
Learn about architectural patterns for:
- Scalability. Discover the advantages of horizontal scaling. Patterns covered include Horizontally Scaling Compute, Queue-Centric Workflow, and Auto-Scaling.
- Big data.
Learn how to handle large amounts of data across a distributed system. Eventual consistency is explained, along with the MapReduce and Database Sharding patterns.
- Handling failure. Understand how multitenant cloud services and commodity hardware influence your applications. Patterns covered include Busy Signal and Node Failure.
- Distributed users. Learn how to overcome delays due to network latency when building applications for a geographically distributed user base.
Patterns covered include Colocation, Valet Key, CDN, and Multi-Site Deployment.