Publication date : 01/22/2025

Course : Java, optimization: CPU, memory

Developing efficient, reliable applications

Practical course - 4d - 28h00 - Ref. JOT
Price : 2100 € E.T.

Java, optimization: CPU, memory

Developing efficient, reliable applications



Optimize the performance of Java applications, respecting certain programming patterns. Analyze certain JVM mechanisms that contribute to performance, as well as aspects specific to multithreading. This course focuses on CPU and memory management.


INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Disponible en anglais, à la demande

Ref. JOT
  4d - 28h00
2100 € E.T.




Optimize the performance of Java applications, respecting certain programming patterns. Analyze certain JVM mechanisms that contribute to performance, as well as aspects specific to multithreading. This course focuses on CPU and memory management.


Teaching objectives
At the end of the training, the participant will be able to:
Optimize Java application code to improve performance
Mastering optimization tools
Optimizing virtual machine operation
Optimizing the use of standard libraries
Optimizing the use of multithreading

Intended audience
Developers, engineers, project managers close to development.

Prerequisites
Good knowledge of Java. Experience in Java programming required.

Practical details
Hands-on work
The practical exercises in this course do not involve programming, but consist in the use of tools and the analysis of optimized code.
Teaching methods
Throughout the session, you'll become familiar with optimization tools.

Course schedule

1
Optimization methodology and tools

  • Optimization principles and strategies.
  • Profiling, testing and support tools.
  • The elements involved in optimization.
Hands-on work
Use of a profiling tool (VisualVM or JFR) and a unit testing tool (JUnit).

2
Caches

  • The general principle of caches, important methods.
  • The main collections used as caches.
Hands-on work
Improve application performance by introducing caches. Use of a profiling tool (VisualVM or JFR).

3
Memory optimization and management

  • Create and copy objects and arrays (clone vs. copy constructors).
  • Non-modifiable objects, non-mutable objects, object pools.
  • The different GCs (algorithms, parameterization, activity visualization).
  • Memory dumps, memory saturation (causes, diagnosis, solutions).
  • Soft, weak, phantom references;
Hands-on work
Improving application performance through better object management. Use of a tool for visualizing memory (VisualVM) and GC activity (Visual GC).

4
Optimization and multithreading

  • Parallelism versus competition.
  • Main concepts: Runnable, Thread, Callable<T>, ExecutorService, ...
  • The impact of parallelism and concurrency on performance.
  • Some optimization solutions.
Hands-on work
The introduction of threads (parallelization and concurrency management) improves the performance of the control application.

5
Optimization and language

  • Different execution and compilation modes.
  • Optimal use of types, instructions and methods.
  • Lambda-expressions, streams, ...
  • String manipulation.
Hands-on work
Improved benchmark application performance.

6
Optimization and I/O

  • The nio library. Buffers and channels. Selectors and their use.
  • Choosing the right stream classes.
  • Optimizing serialization.
Hands-on work
Improved witness application performance through better IO management.


Customer reviews
4,2 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
STEVEN P.
09/09/25
4 / 5

Too theoretical, very academic examples, no real practical exercises. These very technical subjects need to be supported by practical exercises.
THOMAS C.
09/09/25
4 / 5

Rich content. May need to be updated with the latest Java releases.
SÉBASTIEN R.
09/09/25
4 / 5

Fine



Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class

Dernières places
Date garantie en présentiel ou à distance
Session garantie

REMOTE CLASS
2026 : 10 Mar., 23 June, 3 Nov.

PARIS LA DÉFENSE
2026 : 10 Mar., 23 June, 3 Nov.