Ovum recently released its first Market Radar focused on Cloud-native Application Performance Management, researched and written by Principal Analyst, Dr. Michael Azoff. You can download a complimentary version here.
Ovum describes cloud-native development as “The new wave of microservices architecture and containerization” and says, “This approach has one of the fastest adoption rates of any new technology we have witnessed.”
What is causing this fast shift in application architecture?
Applications are the new frontier on which businesses compete. If you don’t deliver the features and functionality that users want, there is a competitor or upstart who will. So, companies are looking to accelerate the development and delivery of new applications and features to get ahead of, or keep up with, their competition.
Applications built using microservices and containers give development teams more flexibility and increase delivery speed (when using agile and DevOps practices) as each component of the application is independent; connected only via APIs.
Companies like Amazon, Google and Netflix (the original inventors of many of these technologies) introduce thousands of changes a day using these technologies. And because the components are independent, specific parts of the application can scale as needed to satisfy consumer demand.
Flexibility and velocity are great, what’s the downside?
The flip side to the flexibility and velocity that can be achieved with cloud-native development is the increased level of complexity. You now have independent development teams focused on specific components introducing code changes, in parallel with other teams, to your live application. Microservices are running in hundreds, if not thousands, of containers distributed across multiple hosts that may or may not be in the same data center. The environment is highly dynamic and designed to scale on demand, causing containers to spin up and spin down, sometimes only lasting for a few seconds.
To give you an idea of what this might look like, the image below is an example of a Dynatrace customer’s environment looking at the services layer.
“A completely new approach to APM”
Because of this complexity, Dr. Azoff says, “This creates a serious challenge in terms of performance management, and calls for a completely new approach to APM.”
He believes that “APM is essential for dealing with the complexity of the cloud native environment.” And that, “The new generation of APM solutions is meeting this challenge with a range of technologies that can reduce the complexity of distributed tracing, time series metrics gathering and analysis, and monitoring container/microservices health and transactions.”
He goes on to say, “For any organization embarking on building cloud-native systems, these cloud-native APM solutions will be essential for providing the eyes and ears into the highly complex sets of messages that flow between microservices.”
The report highlights a number of key technologies that exist in the “New generation of APM solutions” that are helping to meet the challenges imposed by cloud native applications. These include automation, artificial intelligence (or machine learning), real-time analysis, and distributed tracing, to name a few.
There is a great chart in the report (see below) that covers off on the cloud native technology stack vs. a monolithic stack and where traditional APM differs and intersects with cloud-native APM.
The report also offers a series of recommendations for enterprises and provides a comprehensive overview and analysis of the key characteristics and capabilities necessary in a cloud native APM solution, and why each is important.
Lastly, it reviews a number of APM vendors against these capabilities and provides you the Ovum Rainbow Map for cloud-native APM 2017-2018.
We hope you find the report informative and useful as you do your research on cloud native performance monitoring. Get your complimentary copy here.