The Forgotten Dependencies That All Applications Have
April 23, 2013

Ennio Carboni

Share this

Most IT administrators have some sort of visibility into application health and performance. APM tools provide current and historical performance statistics of the overall application, but in many cases they overlook the critical dependencies – both between multiple applications (such as a web application that depend on a SQL database), and between applications and the underlying infrastructure that supports them (such as the switches that connect the web application to the SQL database). Given the increased complexity in the modern IT ecosystem, it is critical to understand these dependencies and the impact they have on the effectiveness of an APM solution.

Most IT teams can measure the overall performance of applications, using server-side agents, internal application performance instrumentation, network traffic inspection, log file inspection, synthetic transactions, etc. In most cases, IT can detect that an application is having a performance problem, but do not have full visibility into all the components of the infrastructure in order to identify why an application is underperforming.

Investments in more robust APM solutions allow IT to determine the intra-application dependencies – for example, to discover the relationship between a financial application and the SQL services upon which it depends. However, without the ability to automatically discover the layer 2 (port-to-port) topology, IT can’t understand the critical network path that connects the pieces together.

If the network is congested, the APM solution may be able to determine that SQL transactions are running slow, but probably cannot identify the actual network segment that is causing the problem.

Virtualization and public/private clouds have geometrically compounded this complexity by adding multiple dependencies that are usually invisible to the application layer. Applications running on VMs encounter multiple levels of abstraction that complicate triaging performance issues – VM hosts may have resource contentions between multiple VMs, virtualized disks may experience latencies due to network congestion between the hosts and the SAN – ultimately triggering a lengthy investigation by IT administrators.

For business critical applications, the cost of downtime is often measured in thousands of dollars per minute – the faster an IT administrator can identify the root cause of a performance or downtime issue, the less impact such an event has on the company.

In order to most effectively monitor application performance, you must be able to discover and understand all of the pieces that go into delivering applications – network topology, server performance, virtualization infrastructure, traffic analysis – so that when performance problems are detected, the root cause is also identified. IT departments can then address the problems instead of trying to figure out the root cause, which ultimately reduces the cost to the company, frees up IT admins to do “real work”, and starts to change internal perceptions of IT’s efficiency and effectiveness.

Ennio Carboni is President and General Manager of Ipswitch's Network Management Division

Related Links:

Share this