Synopses & Reviews
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. Youll learn how each of these platform-agnostic patterns work, when they might be useful in the cloud, and what impact theyll have on your application architecture. Youll 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, youll 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.
Do you need to learn about cloud computing architecture with Microsofts Azure quickly? Read this book! It gives you just enough info on the big picture and is filled with key terminology so that you can join the discussion on cloud architecture. Find out the basics of Azure and how working in the cloud enables scalability never before available to businesses as well as learning about how NoSQL and Sharding work within the cloud. Get up to date fast and have an active role in deciding the future of your company.
About the Author
Bill Wilder is a hands-on architect, developer, trainer, speaker, author, and community leader focused on helping companies and individuals succeed with the cloud using the Windows Azure Platform. Bill began working with Windows Azure when it was unveiled at the Microsoft PDC in 2008 and subsequently founded the Boston Azure user group (www.bostonazure.org), the first Windows Azure user group in the world, in October 2009. Bill is recognized by Microsoft as a Windows Azure MVP and is the author of the book Cloud Architecture Patterns (published by OReilly). Bill is Principal Consultant at Development Partners Software (www.devpartners.com), can be found blogging at blog.codingoutloud.com, and is on Twitter at @codingoutloud.
Table of Contents
Preface; Audience; Why This Book Exists; Assumptions This Book Makes; Contents of This Book; Building Page of Photos on Windows Azure; Terminology; Conventions Used in This Book; Using Code Examples; Safari® Books Online; How to Contact Us; Acknowledgments; Chapter 1: Scalability Primer; 1.1 Scalability Defined; 1.2 Resource Contention Limits Scalability; 1.3 Scalability is a Business Concern; 1.4 The Cloud-Native Application; 1.5 Summary; Chapter 2: Horizontally Scaling Compute Pattern; 2.1 Context; 2.2 Impact; 2.3 Mechanics; 2.4 Example: Building PoP on Windows Azure; 2.5 Summary; Chapter 3: Queue-Centric Workflow Pattern; 3.1 Context; 3.2 Impact; 3.3 Mechanics; 3.4 Example: Building PoP on Windows Azure; 3.5 Summary; Chapter 4: Auto-Scaling Pattern; 4.1 Context; 4.2 Impact; 4.3 Mechanics; 4.4 Example: Building PoP on Windows Azure; 4.5 Summary; Chapter 5: Eventual Consistency Primer; 5.1 CAP Theorem and Eventual Consistency; 5.2 Eventual Consistency Examples; 5.3 Relational ACID and NoSQL BASE; 5.4 Impact of Eventual Consistency on Application Logic; 5.5 Summary; Chapter 6: MapReduce Pattern; 6.1 Context; 6.2 Impact; 6.3 Mechanics; 6.4 Example: Building PoP on Windows Azure; 6.5 Summary; Chapter 7: Database Sharding Pattern; 7.1 Context; 7.2 Impact; 7.3 Mechanics; 7.4 Example: Building PoP on Windows Azure; 7.5 Summary; Chapter 8: Multitenancy and Commodity Hardware Primer; 8.1 Multitenancy; 8.2 Commodity Hardware; 8.3 Summary; Chapter 9: Busy Signal Pattern; 9.1 Context; 9.2 Impact; 9.3 Mechanics; 9.4 Example: Building PoP on Windows Azure; 9.5 Summary; Chapter 10: Node Failure Pattern; 10.1 Context; 10.2 Impact; 10.3 Mechanics; 10.4 Example: Building PoP on Windows Azure; 10.5 Summary; Chapter 11: Network Latency Primer; 11.1 Network Latency Challenges; 11.2 Reducing Perceived Network Latency; 11.3 Reducing Network Latency; 11.4 Summary; Chapter 12: Colocate Pattern; 12.1 Context; 12.2 Impact; 12.3 Mechanics; 12.4 Example: Building PoP on Windows Azure; 12.5 Summary; Chapter 13: Valet Key Pattern; 13.1 Context; 13.2 Impact; 13.3 Mechanics; 13.4 Example: Building PoP on Windows Azure; 13.5 Summary; Chapter 14: CDN Pattern; 14.1 Context; 14.2 Impact; 14.3 Mechanics; 14.4 Example: Building PoP on Windows Azure; 14.5 Summary; Chapter 15: Multisite Deployment Pattern; 15.1 Context; 15.2 Impact; 15.3 Mechanics; 15.4 Example: Building PoP on Windows Azure; 15.5 Summary; Further Reading; Page of Photos (PoP) Sample; Resources From Preface and Chapters;