Cloud Design Patterns

Prescriptive Architecture Guidance for Cloud Applications

by Alex Homer, John Sharp, Larry Brader, Masashi Narumoto, Trent Swanson

DescriptionTable of ContentsDetailsHashtagsReport an issue

Book Description

Cloud applications have a unique set of characteristics. They run on commodity hardware, provide services to untrusted users, and deal with unpredictable workloads. These factors impose a range of problems that you, as a designer or developer, need to resolve. Your applications must be resilient so that they can recover from failures, secure to protect services from malicious attacks, and elastic in order to respond to an ever changing workload. This guide demonstrates design patterns that can help you to solve the problems you might encounter in many different areas of cloud application development. Each pattern discusses design considerations, and explains how you can implement it using the features of Windows Azure. The patterns are grouped into categories: availability, data management, design and implementation, messaging, performance and scalability, resilience, management and monitoring, and security. You will also see more general guidance related to these areas of concern. It explains key concepts such as data consistency and asynchronous messaging. In addition, there is useful guidance and explanation of the key considerations for designing features such as data partitioning, telemetry, and hosting in multiple datacenters. These patterns and guidance can help you to improve the quality of applications and services you create, and make the development process more efficient.

This open book is licensed under a Open Publication License (OPL). You can download Cloud Design Patterns ebook for free in PDF format (16.2 MB).

Table of Contents

 
Cache-Aside Pattern
 
 
Circuit Breaker Pattern
 
 
Compensating Transaction Pattern
 
 
Competing Consumers Pattern
 
 
Compute Resource Consolidation Pattern
 
 
Command and Query Responsibility Segregation (CQRS) Pattern
 
 
Event Sourcing Pattern
 
 
External Configuration Store Pattern
 
 
Federated Identity Pattern
 
 
Gatekeeper Pattern
 
 
Health Endpoint Monitoring Pattern
 
 
Index Table Pattern
 
 
Leader Election Pattern
 
 
Materialized View Pattern
 
 
Pipes and Filters Pattern
 
 
Priority Queue Pattern
 
 
Queue-Based Load Leveling Pattern
 
 
Retry Pattern
 
 
Runtime Reconfiguration Pattern
 
 
Scheduler Agent Supervisor Pattern
 
 
Sharding Pattern
 
 
Static Content Hosting Pattern
 
 
Throttling Pattern
 
 
Valet Key Pattern
 
 
Asynchronous Messaging Primer
 
 
Autoscaling Guidance
 
 
Caching Guidance
 
 
Compute Partitioning Guidance
 
 
Data Consistency Primer
 
 
Data Partitioning Guidance
 
 
Data Replication and Synchronization Guidance
 
 
Instrumentation and Telemetry Guidance
 
 
Multiple Datacenter Deployment Guidance
 
 
Service Metering Guidance
 

Book Details

Subject
Computer Science
Publisher
Microsoft Press
Published
2014
Pages
236
Edition
1
Language
English
ISBN13 Digital
9781621140368
ISBN10 Digital
1621140369
PDF Size
16.2 MB
License
Open Publication License

Related Books

Designing Scalable JavaScript Applications
If you've ever written a non-trivial JavaScript application, you know that creating a code base that's easy to maintain and scales well over time is no small feat. The complexity only grows as the project becomes larger. While it's impossible to plan for every change that could possibly happen over the life of a project, you can help future-proof y...
Acceptance Test Driven Development with React
This book describes how to apply the Acceptance Test Driven Development when developing a Web Application named bookish with React / Redux and other tools in react ecosystem. It also introduces best practices and design patterns in detail about how to write clean code. Using ATDD to build a React Application from scratch. During the development ...
React in patterns
This book about common design patterns / techniques used while developing with React. It includes techniques for composition, data flow, dependency management and more....
Android Notes for Professionals
The Android Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
CSS Notes for Professionals
The CSS Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....
Bash Notes for Professionals
The Bash Notes for Professionals book is compiled from Stack Overflow Documentation, the content is written by the beautiful people at Stack Overflow....