Application downtime is an enterprise’s worst nightmare. On top of that, it’s fairly common. According to a survey conducted by Dun & Bradstreet, 59 percent of Fortune 500 companies experience a minimum of 1.6 hours of downtime per week. Each time a business application fails, the developers or operations teams have a herculean task ahead of them. They must figure out the root cause of the problem, rectify it and get the business running — all within a short span of time.

Veeam’s Data Center Availability Report 2014 states that, on average, it takes 2.86 hours to recover mission-critical applications and more than eight hours for non-critical applications. Business application downtime can affect customer loyalty, cripple revenue and damage a company’s reputation. A survey conducted by EMC in 2014 states that data loss and downtime amount to a $1.7 trillion loss for enterprises, worldwide.

Monitoring techniques such as audits or spreadsheets facilitate reactive troubleshooting. A lot of time is wasted in narrowing down the issue and then resolving it, leading to even longer downtimes. To reduce the frequency and duration of downtimes, teams must be alerted to impending issues. This will help them take proactive steps to prevent issues or, if they do occur, resolve them quickly.

Considering the serious repercussions of business downtime, it is high time enterprises chose a better strategy. Enterprises should be open to adopting strategies that enable them to take timely action before the situation starts spiralling out of control. Application dependency maps assist and ensure that enterprises are more proactive in their approach.

Application Dependency Mapping: A Real-Time Visualization Tool

Automated application dependency maps work more or less like regular maps and assist you in finding your way around your immediate location.

Here is a sample dependency map that shows the dependencies between an application (TravelApp) and its underlying components:

dependency map

In this example, the TravelApp application is connected to five different application components:  Web Server/Services 1, Application Servers 2, Application Servers 3, Web Server/Services 4, and Application Servers 5. Each of these components is, in turn, connected to underlying elements. Examples are Tomcat application servers, PostgreSQL databases, and a Redis key-value store.

Solving a problem becomes easy if you can visualize it. This is the primary function of dependency maps. You can get a complete picture of a complex environment, with all the business processes and interdependent components. These maps are generated quickly and are updated dynamically as and when changes occur in the environment. By providing real-time, actionable information, they enable teams to make better, faster and more accurate decisions.

Here are some ways in which application dependency maps help during downtimes.

Troubleshoot Within Minutes

When a process fails, you can use this map to scan the environment completely. You can immediately detect any issue in the application or the component level. You don’t have to scan the entire stack to know the fault location. This helps the team rectify the issue and get the systems up in no time. In the above example of the TravelApp application, you can quickly identify that there is a problem with it. Just pointing the mouse over the TravelApp component on the dependency map can reveal the underlying reasons for the problem.

monitoring

Proactively Detects Faults

Currently, most business applications are deployed on complex architectures to improve performance and user experience. For instance, application server or database clusters are used to ensure high availability and handle excess workload.

Manually discovering and mapping the relationships between such applications is a time-consuming, resource-intensive process. But, real-time dependency maps save ample time and effort. They provide the status of individual elements, even in such complex deployments. By viewing the map, you can detect failed nodes in a cluster and fix them in time to prevent an outage.

Prepares You for Unpleasant Surprises

Sometimes, an unplanned change could cause an interruption. This could ripple throughout the technology stack, causing critical business processes to fail. Using application maps, you can perform a business impact analysis (BIA) to quantify the risks and benefits associated with a particular configuration change. The generated assessment report will address the concerns of the stakeholders on whether the proposed change is necessary.

Ensures Smooth Running of Operations

Another advantage of using dependency maps is that the discovered applications and dependencies (between the applications and related systems) can be populated in a configuration management database for future reference. You can also accurately estimate the impact of discovered applications on the underlying infrastructure.

What Next?

With increasing competition and a huge demand for highly available and optimally performing services, it is critical to limit downtime. While it is impossible to predict every problem that might endanger business activities, it is still essential to have a backup plan. By adopting a strategy that bridges the gap between operational tasks and business goals, teams can take control of such situations, before it’s too late.

Control Application Downtime with Application Dependency Maps

About The Author
- Sridhar Iyengar is the vice president, product management, at ManageEngine, a division of Zoho Corporation. He is responsible for building IT management solutions for mid and large markets. He has spent around 15 years in the network management industry, building products and solutions for telecom carriers, OEM, enterprise and service providers. Sridhar can be reached at @isridhar. For more information on ManageEngine, the real-time IT management company, please visit www.manageengine.com; follow the company blog at http://blogs.manageengine.com, on Facebook at http://www.facebook.com/ManageEngine and on Twitter @ManageEngine.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>