Java Performance Tuning
Java(TM) - see bottom of page
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 ...
Tips July 2020
JProfiler
|
Get rid of your performance problems and memory leaks!
|
JProfiler
|
Get rid of your performance problems and memory leaks!
|
|
|
Back to newsletter 236 contents
https://www.youtube.com/watch?v=wuEv8GG8i_U
Elastic APM - Diving in to the async profiler feature of the java APM agent (Page last updated May 2020, Added 2020-07-27, Author Felix Barnsteiner, Publisher Elastic). Tips:
- Instrumenting profiling overhead is proportional to the number of methods instrumented, but is disproportionately bad if you instrument very quick methods that are called many times
- Sampling profiling overhead is proportional to the shortness of the sampling interval, and has periodicity bias where it can miss methods that are regularly called outside the samples (there is also safepoint bias where samples have to wait for safepoints, but this agent uses async-profiler which doesn't need to wait for safepoints)
- Safepoints are global thread stops when the JVM can do something safely, but when a safepoint is requested each thread has to be paused and that can only happen when the thread reaches a point in execution where it can yield execution which is different for different threads. So there is a delay between safepoint requested (global) and all threads pausing which will be a different amount of time for each thread. Threads that pause earlier than the last paused thread will be sitting idle in a paused state until the last thread pauses.
https://www.keycdn.com/blog/application-performance-management
Essential Application Performance Management Tips and Tools (Page last updated June 2017, Added 2020-07-27, Author Cody Arsenault, Publisher keycdn). Tips:
- Application performance management is what developers do to make sure every user has a consistently positive experience.
- Combine load-testing, real user monitoring, root-cause analysis to pinpoint the exact problem.
- Availability monitoring (testing IP protocols and network services), is an essential part of APM, but you also need to establish optimal performance thresholds and set up real-time alerts for when functionality dips below thresholds.
- Monitor: Basic server metrics (CPU, memory, IO); timing for individual web requests; performance of application dependencies including caching, databases and other web services; code level performance with profiling; transaction traces; application log data and errors; application framework metrics such as performance counters and JMX MBeans.
- Customers are 10 times more likely to experience a slowdown than an outage; slowness is more likely loss of customers than outages.
- Gartner 5 steps: Start with the end-user experience; Identify all the components in the application architecture; Trace your user transactions; Provide deep dive monitoring capability for each component that impacts user transactions; Analyze the metrics to identify weak links and anticipate potential end-user problems.
- Some transactions should be monitored more heavily than others, so you may want to establish different polling frequencies for different transactions
- If more than 35 percent of your performance issues are identified by users before the IT team, then you need to do a better job of identifying potential bottlenecks, errors and constraints
- Look for geographical response time discrepancies
Jack Shirazi
Back to newsletter 236 contents
Last Updated: 2025-01-27
Copyright © 2000-2025 Fasterj.com. All Rights Reserved.
All trademarks and registered trademarks appearing on JavaPerformanceTuning.com are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries. JavaPerformanceTuning.com is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.
URL: http://www.JavaPerformanceTuning.com/news/newtips236.shtml
RSS Feed: http://www.JavaPerformanceTuning.com/newsletters.rss
Trouble with this page? Please contact us