Java Performance Tuning

Java(TM) - see bottom of page

|home |services |training |newsletter |tuning tips |tool reports |articles |resources |about us |site map |contact us |
Tools: | GC log analysers| Multi-tenancy tools| Books| SizeOf| Thread analysers| Heap dump analysers|

Our valued sponsors who help make this site possible
JProfiler: Get rid of your performance problems and memory leaks! 

Training online: Concurrency, Threading, GC, Advanced Java and more ... 

News July 2020

Get rid of your performance problems and memory leaks!

Modern Garbage Collection Tuning
Shows tuning flow chart for GC tuning

Java Performance Training Courses
COURSES AVAILABLE NOW. We can provide training courses to handle all your Java performance needs

Java Performance Tuning, 2nd ed
The classic and most comprehensive book on tuning Java

Java Performance Tuning Newsletter
Your source of Java performance news. Subscribe now!
Enter email:

Training online
Threading Essentials course

Get rid of your performance problems and memory leaks!

Back to newsletter 236 contents

This month I'm focusing on APM (Application Performance Management). The APM landscape is in flux at the moment. There are many established vendors providing mature products, many solid open source tools, and a number of new vendors entering the market with AI based addons. In the news, tools and articles sections I provide links for many of the more mature open source tools, but I'll start here by providing a list of the top 10 core APM features so you can understand what APM provides:

  1. Auto-generates metrics from networks, hosts, JVMs, and applications
  2. Has an API to add custom metrics
  3. Provides integrated metrics dashboards with drill-down and analysis capabilities including historical over adjustable time periods
  4. Has settable alerts based on thresholds and trends
  5. Allows you to trace requests across all distributed components with span-time breakdowns to identify where time is spent, with tracing dashboards that have drill-down capabilities
  6. Capable of identifying incident root cause to the level of (further is better) infrastructure/application/request/ context/process/thread/code stack/line of code
  7. Has profiling capabilities
  8. Shows resource usage aggregations and breakdowns
  9. Finds & shows application dependencies (both calls-from and calls-into any service) with service call graphs
  10. Single-pane of glass: has integrated views for all the data, doesn't require you to shift from one toolset to another

To give you an idea of where APM tools reach beyond the basics, here are 5 top advanced APM features

  1. Provides Machine Learning/AI based automatic anomaly detection
  2. Let's you specify synthetic transactions - regular scripted transactions against your services that are tracked by the tool
  3. Provides Real User Monitoring (RUM), usually with simple SDKs that integrate easily with a tiny footprint into your client/browser application
  4. Enables you to do failed customer interaction (FCI) analyses, eg helps identify where a (potential) customer interacts with your application but fails to complete the action they start
  5. Provides custom callbacks that lets you trigger actions on events, for example triggering scripts to execute an auto-remediation

That gives you a solid idea of the usefulness of APM tools. And in case you want to add some APM capabilities - or check out what's available - this month we have an extensive list of links to open source related APM tools in the tips, tools, news, articles and talks sections below. And of course the tips from this month's articles and talks, as ever are extracted into this month's tips page.

A note from this newsletter's sponsor

Get rid of your performance problems and memory leaks!


Java performance tuning related news


Java performance tuning related tools.


Jack Shirazi

Back to newsletter 236 contents

Last Updated: 2023-01-29
Copyright © 2000-2023 All Rights Reserved.
All trademarks and registered trademarks appearing on are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
RSS Feed:
Trouble with this page? Please contact us