Sie sind auf Seite 1von 8

Azure Cloud Design Patterns

Azure Cloud Design Patterns

Lets talk about Cloud Design Patterns.


We introduced the topic here, then we discussed how it applies
specifically to the AWS cloud here. Now well talk
about patterns as they apply to the Microsoft Azure Cloud.
Microsoft Azure being more focused on application
development provides for much more official and detailed
Design Patterns than AWS. In fact, they dedicate an entire
section on the subject on MSDN, from where you
candownload a 236 page book in PDF or ebook editions, or
order a print version from Amazon. Sample code and an info
graphic poster depicting all the patterns are also available. The
book contains 24 design patterns, 10 guidance topics and 10
sample applications.
Problem Areas

The 24 design patterns are divided into 8 Problem Areas, each


with its own symbol.
Availability
Data Management
Design and Implementation
Messaging

Management and Monitoring


Performance and Scalability
Resiliency
Security

The guide provides solutions to common problems encountered


while developing cloud-based applications, describes the
benefits derived from the application of patterns when
implementing Azure-hosted cloud applications, and discusses
the problems that affect the patterns, and how these relate to
Azure. The book also shows us how to implement the patterns
using the features and services of Microsoft Azure, and
highlights their benefits.
Primer & Guidance Topics

The book also presents guidance topics. These, in fact,


represent the basic orientation for developing applications in
the cloud:

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
Cloud Design Patterns

We come now to the core thematic list: Microsofts 24 patterns:


Static Content Hosting Pattern (example)

Circuit Breaker Pattern

Competing Consumers Pattern (example)

Index Table Pattern

Compute Resource Consolidation


Event Sourcing Pattern
Pattern(example)
Command and Query Responsibility

Federated Identity

Segregation (CQRS) Pattern

Pattern

External Configuration Store


Gatekeeper Pattern
Pattern (example)
Health Endpoint Monitoring
Retry Pattern
Pattern (example)
Leader Election Pattern (example)

Materialized View Pattern


Scheduler Agent

Compensating Transaction Pattern


Supervisor Pattern
Runtime Reconfiguration Pattern (example)

Sharding Pattern

Pipes and Filters Pattern (example)

Cache-aside Patter

Priority Queue Pattern (example)

Throttling Pattern

Valet Key
Queue-based Load Leveling Pattern
Pattern(example)
For each pattern, the book provides a short description, some
context and a problem along with its solution, issues and
considerations, A use case, sample code with C #, and finally
the patterns and related guidance.
Code Samples

All examples work with the Visual Studio Windows Azure


emulator, and can be deployed through the Windows Azure
Cloud Service.
Lets take the Static Content Hosting Pattern as an
example. The pattern is part of these problem areas: Data
Management, Design and Implementation, Performance &
Scalability. The books author writes:
Deploy static content to a cloud-based storage service that can
deliver these directly to the client. This pattern can reduce the
requirement for potentially expensive compute instances.
While adding more detail concerning the context and problem:
Web applications typically include some elements of static
content. This static content may include HTML pages and other
resources such as images and documents that are available to
the client, either as part of an HTML page (such as inline
images, style sheets, and client-side JavaScript files) or as
separate downloads (such as PDF documents).

Although web servers are well tuned to optimize requests


through efficient dynamic page code execution and output
caching, they must still handle requests to download static
content. This absorbs processing cycles that could often be put
to better use.
And the Solution gives us the guidelines to implement it:
In most cloud hosting environments it is possible to minimize
the requirement for compute instances (for example, to use a
smaller instance or fewer instances), by locating some of an
applications resources and static pages in a storage service.
The cost for cloud-hosted storage is typically much less than for
compute instances.
When hosting some parts of an application in a storage service,
the main considerations are related to deployment of the
application and to securing resources that are not intended to
be available to anonymous users.

Therefore we see that the pattern improves the performance


and scalability by moving the delivery of static content to Azure
Blob Storage. The sample code simulates the solution of
pattern also giving us useful snippet of Azure code.
Conclusion

As you can see, Cloud Design Patterns for Azure is rich in useful
content. In particular, I highly recommend a quick read
of Autoscaling Guidance.
Next, well explore two websites that also discuss Cloud Design
Patterns in more general terms.
Become a Cloud expert with our Professional PLUS membership
New courses every week.
START YOUR 7-DAY FREE TRIAL

Automated Data Management with


EBS, S3, and Glacier

BECOME A MEMBERWatch

the full Course now and start enjoying our Courses Library.
Each course includes HD videos and scenario-based quizzes.

Fabio Cecaro

Expert and Visionary of the Cloud Computing model, Cloud


Solution Architect, President of EuroCloud Italy. Purist of the
NIST definition of Cloud Computing. I began to deal with the
Cloud since 2007 as a private researcher, then as an
entrepreneur. To evangelize the area where I live, I founded one
of the first five Europeans AWS User Group (Naples, Italy), cofounded the EuroCloud Italy association and organized
CloudCamps. I have "baptized" many to the Cloud. My
Nicknames: Mr.Cloud or Santa Cloud at Christmas time.
More Posts - Website
Follow Me:

Das könnte Ihnen auch gefallen