High Availability for Azure Deployments

Following are High Availability strategies while developing Azure Applications.

Multiple Instances

Ensure the application components, services have multiple instances.

Retry Pattern

In case of Transient failures that should not last long, the application should implement a Retry pattern to repeat the invoke and get through the service.

Circuit Breaker Pattern

For prolonged failures, the application should implement Circuit Breaker pattern so that subsequent failures will not hang the application.  Once the failure is resolved, the Circuit Breaker should open the gates back.

Message Broker

Implement a Message Broker for high critical tasks to ensure the tasks in the Queue is definitely processed.

Automate Deployments

Consider using Automated Deployments including for Updates too.

Deployment Slots

Usage of Deployment Slots enable switching between Production & Staging deployments.

Geo-replicate Database

Geo-Replicate the database for higher availability.

Monitoring Systems

Implement proper monitoring systems to track failures, notify on errors, long duration tasks etc.

Disaster Recovery

Create a multi-site recovery plan for mission critical applications.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s