posted on Wednesday, March 31, 2010 3:28 AM
The future of application performance management is in real-time visibility, action, and integration.
For a very long time now APM (Application Performance Management) has been a misnomer. It’s always really been application performance monitoring, with very little management occurring outside of triggering manual processes requiring the attention of operators and developers. APM solutions have always been great at generating eye-candy reports about response time and components and, in later implementations, dependencies on application and even network infrastructure.
But it has rarely been the case that APM solutions have really been about, well, managing application performance. Certainly they’ve attempted to provide the data necessary to manually manage applications and do an excellent job of correlation and even in some cases deep trouble-shooting of root-cause performance problems. But real-time, dynamic, on-demand performance management? Not so much. AppDynamics, however, is attempting to change that. Its focus is on managing the performance and availability of applications in real-time (or at least near-time) and it does so across cloud computing environments as well as internal to the data center.
DEPTH of VISIBILITY
One of the negatives with cloud-based applications is a lack of visibility into the supporting infrastructure. This leaves operators and administrators out of touch with root- causes for poor application performance because they are unable to “see” into the data path. While they may know from traditional monitoring solutions that response time is degrading, it may be nearly impossible for them to determine whether that is because an intermediate infrastructure service is performing poorly or, more likely, because the application is experience heretofore unseen load. While AppDyanmics’ solution provides visibility into both scenarios, it is the latter that is most intriguing when applied to a volatile, elastic scalability scenario because not only is it capable of recognizing the situation but it can take action to redress the situation as well.
Really.
It’s all very user-configurable, so the policies applied are completely under the control of the organization, but it does provide the ability to automatically launch new instances of applications as a reaction to poor performance due to heavy load. What should be interesting about that is that it can recognize that it is, in fact, heavy load causing the performance degradation and not, say, a poorly performing upstream switch or infrastructure device. When a performance degradation is due to functionality deep inside the application, AppDynamics can drill down to the code level and specify which line(s) of code are responsible for the problem. So it’s profiling not only the network and the environment, but the very code within the application. That’s some serious visibility that generally isn’t available with even traditional APM solutions.
Also of note is the ability to interpret performance trends in the context of historical application performance. The solution is able to recognize that while a spike in load on Tuesday afternoon is normal based on historical trends, it is not typical on Monday morning and thus something is happening that needs to be addressed.
INTEGRATION
You know me, I got excited about the potential of such a solution when we started talking about integration and collaboration. AppDynamics, like many solutions today, has a couple of integration points exposed via APIs that allow the gathering of data for use in its orchestration component. That data can be extended to include user-specified data to broaden the visibility as necessary for a specific application. It could also be used, and here’s the cool part, to integrate data from Infrastructure 2.0 capable components to make even more broad its understanding of the root-cause of performance degradations.
That’s not unlike the way in which virtualization management solutions like VMware’s vSphere and Microsoft’s System Center integrate with Infrastructure 2.0 capable components so that they can utilize data that would otherwise be unavailable in the provisioning decision making processes. Imagine integrating not only detailed network and application network data with virtualization container data but also with more detailed application layer data, the kind that provides the information necessary to determine not only whether new resources are necessary to maintain performance or availability, but what kind of resources.
CLOUD and VIRTUALIZATION TAKING US BACK to the FUTURE
APM and indeed most solutions requiring visibility into the application were moving rapidly toward an agentless model just a few years ago. It was a badge of honor, in fact, that a
solution was able to provide visibility into the application layer without deploying an agent. That’s primarily because agent-based models require additional management, testing, patching, and upgrades that are just as problematic as any other integrated solution.
But the advent of cloud and the “black box” infrastructure mentality is driving APM and other visibility and management solutions back toward an agentful model because it’s simply too difficult – in some cases impossible – to gather the required data any other way. For the same reasons emerging architectural models for cloud computing tightly couple application-aware VNA (Virtual Network Appliances) with workloads (visibility and control) it will be necessary to tightly couple APM solutions with the application through the use of agent-based technology.
Infrastructure 2.0 requires a trio of components working in concert to create a dynamic infrastructure that can scale up and down on-demand and apply the right policies at the right time to ensure applications are fast and secure. One of that trio is the application, and when it is not feasible for developers to integrate the application directly with the rest of the dynamic infrastructure fabric it makes sense to leverage an APM solution – an agent-based APM solution – to accomplish that task instead. Whether it’s direct or via an APM solution like AppDynamics, the delivery of an application is ultimately the goal of any data center architecture and thus the application is a key component of the Infrastructure 2.0 trifecta.
Technorati Tags:
MacVittie,
F5,
application performance management,
apm,
integration,
infrastructure 2.0,
application,
performance,
application delivery,
cloud connect,
AppDynamics