In August of this year I attended VMWare’s SpringOne 2GX conference. It was good, but I was more interested in looking for “operational” advancements in support of cloud-centric applications – like those running virtualized in cloud-fabric like EC2 and the like. While there I stopped by a booth called “AppDynamics”. These guys were exiles from CA for the most part when Wily was acquired a few years back.
Their technology, AppDynamics, in the Application Performance & Monitoring (APM) space is unique and their products are, well … amazing!!! They use a very different approach; rather than using the traditional methods and overhead to collect metrics for monitoring (which means capture everything), using code weaving at runtime for all classes and methods, these guys allow you to define thresholds which their agents monitor so that no overhead (processes) are wasted monitoring events that are operating normally. Rather, the drill-down on the exceptions which means they run very, very lean.
Since they are business transaction focused you can tackle performance problems from a business context rather than just IT context – like CA/Wily. If a business transaction is a “user-generated action,” then it’s pretty clear how monitoring business transactions can have a tremendous effect on your ability to understand the experience of your end user. If your end user adds a book to a shopping cart, is the transaction performing as expected or is it taking 3 seconds longer? (And what kind of impact will that have on end users? Will they decide to surf away and buy books somewhere else, thus depriving your business of not just the immediate purchase but the potential loss of lifetime customer revenue?) Monitoring business transactions gives you a powerful insight into the experience of your end user.
Business transactions offer a Service Assurance context that you can use for ongoing monitoring. The size of your environment may change and the number of nodes may come and go, but by focusing on business transactions as your ongoing metric, you can begin to create baseline performance goals for your application. Understanding this baseline performance is exactly what you need in order to understand whether your application is running as expected and desired, or whether it’s completely gone off the rails. For example, you may have a sense of how your application is supposed to perform, but do you really know how it performs every Sunday at 6 p.m.? Or the last week of December? And if you don’t, how will you know when the application is deviating from an acceptable performance baseline? It’s figuring out “normal” in terms of days, weeks, and even months that you need to truly understand your application’s baseline performance.
Another very cool technology for monitoring is ExtraHop… They are an appliance-based solution which unlike AppDynamics are not agent based; rather they rely on layer interrogation OSI (layers 2-7) – they monitor traffic in flight and auto-discover patterns and trends based on traffic flow. They are out-of-band, but in-stream, so to speak … very, very cool!!! Image having all the depth and scope of AppDynamics without having to worry about deploying all the agents (and their licensing)!!! They offer both a VM and/or hardware-appliance solution which is capable of “federation”, for both GTP and LTM network models. From an IT adoption perspective they are another F5-like tool…
Since ExtraHop does traffic-shaping, they can present and model information gathered across multiple protocols covering all layers of the application stack. This supports the views expressed by many analysts who believe application performance and monitoring should be performed at the network layer and not the application stack. – highly reliable networks are becoming increasingly important, tools like these are taking this seriously in their product sets. Here is a great excerpt from a Jim Frey of Enterprise Management Associates report:
“In this age of growing application diversity, server virtualization and cloud adoption, when workloads and services are moving flexibly between systems and locations in dedicated, hybrid, and outsourced infrastructure models, one of the few constants is that networks must keep everything in contact and provide the communications element which allows all the parts to work together as a whole. Despite this, the productivity and agility that organizations look to their IT organizations to provide is primarily embodied not within the network, but rather within the applications and services that the network is entrusted to deliver.”
IT operations teams recognize this link and are looking for context-aware monitoring techniques that can provide insight into application traffic and transactions to reveal quality, health, issues, and problems. A number of approaches have been brought to market to address this need, but have fallen short either due to a lack of complete visibility or a lack of analytical depth or sophistication. New and innovative approaches are needed to close the gap between infrastructure and application performance visibility, and to provide actionable intelligence focused on the true center of IT’s value to host organizations — applications and services …
I have been trying to convince the powers that be at my current employer that this is the type of tool we need for go-live; however funding is an issue. It is truly a shame. I suppose when the lights dim when we roll out our solution they may have a different perspective. For now I plan to prototype this technology (offsite) – keeping it in my back pocket so to speak, I believe it has real value.