Advanced Java Performance Tuning Training

The advanced Java performance tuning course is targeted at senior Java developers and system administrators who need to configure and/or architect Java applications for maximum performance. It will cover

  • Java performance tuning approach and methodology,
  • monitoring Java applications and application server performance,
  • analysing performance bottlenecks,
  • changing configuration parameters for maximum performance and,
  • infrastructure design architectural issue to consider when developing an application and its supporting infrastructure

The course makes use of hands on labs and our GEXplorer application to demonstrate Java memory management and garbage collection algorithms.

Contact us to book your seat. Training may be done on-site or at our training venues in Durban, Cape Town and Johannesburg.


Course Duration Price ZAR(ex vat) Price USD
Java Performance Tuning Training Summary
Advanced Java 3 days R15,000 $1,500

Course Outline

JVM and Performance Overview

  • JVM Overview
  • Performance Principles
  • Common Performance Problems
  • Performance Methodology
  • Development and Performance

Monitoring Operating System Performance

  • Monitor CPU Usage
  • Monitor Network I/O
  • Monitor Disk I/O
  • Monitor Virtual Memory Usage
  • Monitor and Identify Lock Contention

Monitoring the JVM

  •     HotSpot Generational Garbage Collector
  •     Monitor the Garbage Collector with Command Line Tools
  •     Monitor the Garbage Collector with VisualVM
  •     Monitor the JIT Compiler
  •     Throughput and Responsiveness

Performance Profiling

  •     Profile CPU Usage
  •     Profile JVM Heap
  •     Find Memory Leaks
  •     Identify Lock Contention
  •     Heap Profiling Anti-patterns
  •     Method Profiling Anti-patterns 

Garbage Collection Schemes

  • Garbage Collection
  • Generational Garbage Collection
  • GC Performance Metrics
  • Garbage Collection Algorithms
  • Types of Garbage Collectors
  • JVM Ergonomics

Garbage Collection Tuning

  • Tune the Garbage Collection
  • Select the Garbage Collector
  • Interpret GC Output

Language Level Concerns and Garbage Collection

  • The best practices for Object Allocation
  • Invoking the Garbage Collector
  • Reference Types in Java
  • Application instrumentation

Performance Tuning at the Language Level

  • String-efficient Java Applications
  • Collection Classes
  • Using Threads
  • Using I/O Efficiently