Microservices iQ

AppDynamics Microservices iQ automatically detects the service end points of the microservices and allows them to be viewed in isolation of distributed business transactions. It monitors microservices throughout their lifetime and ensures data continuity despite intermittent presence of the underlying elastic application infrastructure.

Overview
Microservices iQ is a new intelligent application performance engine, that enables enterprises to efficiently manage microservices-based application environments and deliver performance that delights their customers while exceeding their scale, sophistication, and velocity expectations. With Microservices iQ, you can check the availability of microservices within your network as well as the availability of 3rd-party services. Thread Contention Analyzer provides the next level of performance diagnostics for microservices, ensuring that a particular service is not a bottleneck and doesn't block business transactions.

Microservices architecture is becoming increasingly popular in enterprise application development. Instead of large monolithic code bases, applications are decoupled into services developed and operated by smaller teams.

A microservices architecture significantly enhances the agility and accelerates continuous integration and delivery of enterprise applications. However, this approach can result in large number of microservices that are loosely coupled and communicate primarily via an asynchronous mechanism, creating more complexity and a significant management challenge.
Service End Points Detection

AppDynamics automatically detects the service end points of your microservices architecture and monitors key performance indicators such as calls per minute, average response time, and errors per minute using the Service Endpoint dashboard.

Elasticity Management

Microservices deployed in containers or the Cloud have a short life-span and are highly dynamic. AppDynamics maintains logical identity and historical data about these transient nodes for a certain period, which makes it easy to track the microservices in the context of business transactions.

Thread Contention Analysis

AppDynamics automatically identifies methods with blocking threads that cause performance bottlenecks within the microservices. The thread contention analysis window highlights blocking threads, blocking objects, block time, and the reference to the line of the code, enabling developers to resolve the issue quickly.

There are two ways to deploy Microservices iQ with AppDynamics in your existing container environment.

  • You can build AppDynamics agents inside your docker images and update controller configuration at run time. The advantage of this method is that once the images are built, you can deploy it on multiple environments without rebuilding the images. By updating the configuration at runtime, containers can report to different AppDynamics Controllers, especially when they are operated by separate teams. Check out our example application built with this deployment method.

  • You can also use your pre-built images to mount AppDynamics agents at runtime using docker-compose or tools like source-to-image. If your application images are already built and used in production, it’s easier to add AppDynamics agent instrumentation at runtime without modifying base images. For example, you can use volume to mount the agent path and pass Controller configuration as environment variables. By simply modifying docker-compose.yml file you can start monitoring your containers. Checkout our example application built with this deployment method.

AppDynamics users adopt tools such as Chef and Puppet to automate deployment. You can use samples in this documentation to learn how to automate AppDynamics agent deployment for your own environment.
As business grow, services often begin to scale horizontally, allowing for more microservices and more shared resources per transaction. With Thread Contention Analyzer, AppDynamics users will always have visibility into transaction latency related to contending threads to continue improving end-user latency and the health of application services.
Contention Analyzer is visible in all transaction snapshot data, surfacing the total blocked time, blocking threads with blocking time, blocking objects, as well as blocking code line number. This enables users to instantly identify application performance bottlenecks related to thread contention resulting in Business Transaction Latency.
Try AppDynamics Now!

Introduction

Microservices iQ is a new intelligent application performance engine, that enables enterprises to efficiently manage microservices-based application environments and deliver performance that delights their customers while exceeding their scale, sophistication, and velocity expectations. With Microservices iQ, you can check the availability of microservices within your network as well as the availability of 3rd-party services. Thread Contention Analyzer provides the next level of performance diagnostics for microservices, ensuring that a particular service is not a bottleneck and doesn't block business transactions.

What is Microservices architecture

Microservices architecture is becoming increasingly popular in enterprise application development. Instead of large monolithic code bases, applications are decoupled into services developed and operated by smaller teams.

A microservices architecture significantly enhances the agility and accelerates continuous integration and delivery of enterprise applications. However, this approach can result in large number of microservices that are loosely coupled and communicate primarily via an asynchronous mechanism, creating more complexity and a significant management challenge.

What are the key capabilities of Microservice iQ

Service End Points Detection

AppDynamics automatically detects the service end points of your microservices architecture and monitors key performance indicators such as calls per minute, average response time, and errors per minute using the Service Endpoint dashboard.

Elasticity Management

Microservices deployed in containers or the Cloud have a short life-span and are highly dynamic. AppDynamics maintains logical identity and historical data about these transient nodes for a certain period, which makes it easy to track the microservices in the context of business transactions.

Thread Contention Analysis

AppDynamics automatically identifies methods with blocking threads that cause performance bottlenecks within the microservices. The thread contention analysis window highlights blocking threads, blocking objects, block time, and the reference to the line of the code, enabling developers to resolve the issue quickly.

How to monitor Microservices using Docker

There are two ways to deploy Microservices iQ with AppDynamics in your existing container environment.

  • You can build AppDynamics agents inside your docker images and update controller configuration at run time. The advantage of this method is that once the images are built, you can deploy it on multiple environments without rebuilding the images. By updating the configuration at runtime, containers can report to different AppDynamics Controllers, especially when they are operated by separate teams. Check out our example application built with this deployment method.

  • You can also use your pre-built images to mount AppDynamics agents at runtime using docker-compose or tools like source-to-image. If your application images are already built and used in production, it’s easier to add AppDynamics agent instrumentation at runtime without modifying base images. For example, you can use volume to mount the agent path and pass Controller configuration as environment variables. By simply modifying docker-compose.yml file you can start monitoring your containers. Checkout our example application built with this deployment method.

How to deploy Microservices iQ using Chef or Puppet

AppDynamics users adopt tools such as Chef and Puppet to automate deployment. You can use samples in this documentation to learn how to automate AppDynamics agent deployment for your own environment.

How to troubleshoot with thread contention analyzer

As business grow, services often begin to scale horizontally, allowing for more microservices and more shared resources per transaction. With Thread Contention Analyzer, AppDynamics users will always have visibility into transaction latency related to contending threads to continue improving end-user latency and the health of application services.
Contention Analyzer is visible in all transaction snapshot data, surfacing the total blocked time, blocking threads with blocking time, blocking objects, as well as blocking code line number. This enables users to instantly identify application performance bottlenecks related to thread contention resulting in Business Transaction Latency.

What's next

Try AppDynamics Now!
Advanced Training
Download EBook
How to build (and scale) with microservices
Download WhitePaper
Managing microservices complexity with AppDynamics