Performance monitoring is an old problem. As technology has advanced, we've had to evolve how we monitor applications. Initially, performance monitoring largely involved sending ICMP messages to start troubleshooting a down or slow application. Applications have gotten much more complex, so this is no longer enough. Now we need to know not just whether an application is broken, but why it broke. So APM has had to evolve over the years for us to get there. In Part 1 of this blog, I covered the history of APM. What happens next? Let's find out.
Phase 3: Nowadays of APM
By the 2010s, there was a need to be even more agile and productive. Software releases were becoming more frequent. Virtualized IT systems were becoming more common.
Instead of installing and running application services on physical servers, they were running on virtual machines(VM). These VMs were not just running in company-owned or collocated data centers, but also in the data centers owned by cloud providers like AWS, Azure and GCP.
So, this phase has seen the rise of microservices, which breaks down SOA into even smaller pieces. You now have individual or groups of services running as microservices in Linux containers.
A physical machine sitting inside a cloud provider's data center can have numerous VMs, running many containers, and running various microservices. All of these microservices can make up hundreds of components of what used to be a monolithic application. And the microservices can be spun up and down pretty quickly, only when needed.
The requirements of an APM tool are now much more complex than they've ever been. Not only do they need to trace a user transaction across numerous microservices on the same system, but they also need to happen pretty fast.
When you miss data, you miss root causes
Future days of APM
Many APM providers are just catching up to Phase 3 APM. But as they're doing that, the next phase is currently taking place. According to industry analyst, Gartner, enterprise organizations will have increased the percentage of applications they monitor with APM tools from 5 percent in 2018 to 20 percent in 2021. So, over the next couple of years, your company may quadruple its monitoring.
With the increased use of serverless technologies, APM tools don't have the time to have you install an agent. Applications are further broken down into individual functions of their code and run on function-as-a-service systems. The agent used to collect data on these systems must already exist and start collecting data when the function runs.
With so many microservices running across numerous VMs for one application, you will need a converged view of total performance. You need to know how your infrastructure is performing, whether in the cloud or not. And you need to know how the application is performing. What is also needed is contextual visibility to understand what affects application performance. A correlative view of the application and all the supporting IT infrastructure tiers will help determine the root cause: is it an application code issue, a bottleneck in the cloud, network connectivity, container performance, and so on?
Some APM vendors have implemented infrastructure performance monitoring (IPM) capabilities. Some IPM vendors are adding APM tooling. Your monitoring tools will need to collect all of this application and infrastructure data and provide you with a single view. You need complete observability. Short of that, you won't know what's happening. It'll feel like you're back at Phase 1, where the application or the infrastructure looks like a black box. In the future, we will see more of the converged application and infrastructure monitoring trend being adopted by vendors as well as organizations using monitoring tools.
Adapt or Bye
There are constant changes in IT. As you've seen, how APM has evolved over the years is evidence of that. APM has involved three phases, and more are coming in the future.
If you are used to buying or recommending monitoring tools based on the pitch of the APM vendor, you need to adapt. You must look at how the APM tools you're considering or already use have responded to the changes within your infrastructure.
If you're changing how you keep your users happy, you need a monitoring partner that's doing the same. And you need one doing it as quickly as your environment is changing. As developers create serverless apps or as AI and machine learning become more a part of how applications work, you need a partner that will help you monitor everything. Not just the infrastructure, not just the application, but down to the individual request for a single function. This is a must-have.
So, you must adapt to the only constant in your IT life, and that's change. If your APM vendor cannot adapt as well, it may be time to tell them "bye".
As the data generated by organizations grows, APM tools are now required to do a lot more than basic monitoring of metrics. Modern data is often raw and unstructured and requires more advanced methods of analysis. The tools must help dig deep into this data for both forensic analysis and predictive analysis. To extract more accurate and cheaper insights, modern APM tools use Big Data techniques to store, access, and analyze the multi-dimensional data ...
Modern enterprises are generating data at an unprecedented rate but aren't taking advantage of all the data available to them in order to drive real-time, actionable insights. According to a recent study commissioned by Actian, more than half of enterprises today are unable to efficiently manage nor effectively use data to drive decision-making ...
According to a study by Forrester Research, an enhanced UX design can increase the conversion rate by 400%. If UX has become the ultimate arbiter in determining the success or failure of a product or service, let us first understand what UX is all about ...
The requirements of an APM tool are now much more complex than they've ever been. Not only do they need to trace a user transaction across numerous microservices on the same system, but they also need to happen pretty fast ...
Performance monitoring is an old problem. As technology has advanced, we've had to evolve how we monitor applications. Initially, performance monitoring largely involved sending ICMP messages to start troubleshooting a down or slow application. Applications have gotten much more complex, so this is no longer enough. Now we need to know not just whether an application is broken, but why it broke. So APM has had to evolve over the years for us to get there. But how did this evolution take place, and what happens next? Let's find out ...