Skip to main content

What is Business Continuity and Disaster Recovery (BCDR)

Importance of Business Continuity and Disaster Recovery Planning

BCDR planning is to achieve High Availability for your business application, services, data. For example, your application is hosted in a data center that resides in a natural disaster zone like an Earthquake, Flood, Tsunami, etc. When these such a bad event will occur there quite a high chance to lose data/application forever even the whole data center that can not be recovered at all if the organization does not have the right BCDR planning.

To support business continuity your company must have disaster recovery plans and there's a mixture of virtualized and physical systems at the data center.

Business Continuity and Disaster Recovery(BCDR)

Whenever systems are unavailable can cause your company to lost revenue. Generally, every application and services come with SLA(Service Level Agreement) so the company also might face financial penalties for breaking agreements written for the availability of the services you provide.

BCDR plans are documented steps that the company prepares up that cover the scope and actions to be taken when a disaster or outage happens. Each outage is assessed on its own merit. For example, a disaster recovery plan comes into action when a whole datacenter having a power outage, internet outage, etc.


For the example scenario, a natural disaster occurred like an earthquake, Tsunami, etc. and damaged communications lines made the datacenter or region where your application is hosted and running so your application is useless until that region is up. 

A disaster of this size might bring services down for days, or more than 24 hours, so a full BCDR plan must be invoked to get the service back online.


As part of your BCDR plan for your applications

  • Identify the recovery time objectives (RTOs) 
  • Identify the recovery point objectives (RPOs) 

Both objectives help to realize the maximum tolerable hours that your business can be without specified services, and what the data recovery process should be


Recovery Time Objective(RTO)

An RTO is a measure of the maximum amount of time your business can survive after a disaster before normal service is restored. 
For Example,
  • Your RTO is 12 hours, which means that operations can continue for 12 hours without the business's core services functioning. 
  • If the downtime is 24 hours, your business would be seriously harmed.

Recovery Point Objective(RPO)

An RPO is a measure of the maximum amount of data loss that's acceptable during a disaster. A business can typically decide to do a backup every 24 hours, 12 hours, or even in real-time. incase of disaster, always some data loss.

For example, 

  • Let's say your backup occurred every 24 hours, at midnight 
  • A disaster happened at 9:00 AM the following day, 
  • So 9 hours of data would be lost. 
  • If your application RPO was 12 hours, It would be fine because only 9 hours passed(still 3 hours remaining)
  • If the RPO was 4 hours, for sure there would be a problem and damage would occur to the business(5 hours over in this given scenario).

Bonus Tips:

Whenever you planning to host your application/services (including all the services like the frontend, web API, database, etc).
  • You should host in two different physical regions (like east US and west US)
  • That way you will be having the secondary and primary region
  • So at least your services can be available up and running if a disaster occurred in one region 
  • See the below diagram for the example of a Web Application and related services (BCDR) 
Credit to Microsoft Docs(MSND)- Fig from MSND



Comments

Popular posts from this blog

How to Make a Custom URL Shortener Using C# and .Net Core 3.1

C# and .Net Core 3.1:  Make a Custom URL Shortener Since a Random URL needs to be random and the intent is to generate short URLs that do not span more than 7 - 15 characters, the real thing is to make these short URLs random in real life too and not just a string that is used in the URLs Here is a simple clean approach to develop custom solutions Prerequisite:  Following are used in the demo.  VS CODE/VISUAL STUDIO 2019 or any Create one .Net Core Console Applications Install-Package Microsoft.AspNetCore -Version 2.2.0 Add a class file named ShortLink.cs and put this code: here we are creating two extension methods. public   static   class   ShortLink {      public   static   string   GetUrlChunk ( this   long   key ) =>            WebEncoders . Base64UrlEncode ( BitConverter . GetBytes ( key ));      public   static   long   GetKeyFromUrl ( this   string   urlChunk ) =>            BitConverter . ToInt64 ( WebEncoders . Base64UrlDecode ( urlChunk )); } Here is the Calling Sampl

Azure key vault with .net framework 4.8

Azure Key Vault  With .Net Framework 4.8 I was asked to migrate asp.net MVC 5 web application to Azure and I were looking for the key vault integrations and access all the secrete out from there. Azure Key Vault Config Builder Configuration builders for ASP.NET  are new in .NET Framework >=4.7.1 and .NET Core >=2.0 and allow for pulling settings from one or many sources. Config builders support a number of different sources like user secrets, environment variables and Azure Key Vault and also you can create your own config builder, to pull in configuration from your own configuration management system. Here I am going to demo Key Vault integrations with Asp.net MVC(download .net framework 4.8). You will find that it's magical, without code, changes how your app can read secretes from the key vault. Just you have to do the few configurations in your web config file. Prerequisite: Following resource are required to run/complete this demo ·         A

AWS FREE ASP.NET CORE (.NET 6.0) HOSTING WITH FREE SSL

  FREE ASP.NET CORE (.NET 6.0) Hosting on AWS (Amazon Web Services) Today I was able to host my asp.net 6.0  + ANGULAR 14 application  on AWS Free  Initial Setup of your AWS Account and your Computer Get ready with your asp.net core 3.1 /.net 6 application Install  "AWS toolkit for visual studio 2022" as  visual studio extensions :  it will be required to deploy smoothly from Visual Studio 2022 itself, your life will be easy. Let's finish the AWS account setup  Get signed up with: its free but it will be required a valid credit card or debit card, they will charge nothing for the free services for 1 year * https://portal.aws.amazon.com/billing/signup#/start/email AWS console  for services and offering http://console.aws.amazon.com/ Create a user in AWS Console:  IAM With the help of AWS Identity and Access Management (IAM), you can control who or what has access to the services and resources offered by AWS, centrally manage fine-grained permissions, and adjust permission