HOME
COURSES
COURSE CATALOG
Java Performance Tuning and Optimization
Course ID : D69518GC10
Develop applications by using the Java programming language Implement interfaces and handle Java programming exceptions Use object-oriented programming techniques In this course, students will learn performance tuning methodologies, performance tuning theories, and practical tips on solving difficult performance problems for Java applications. Students will hone their skills on a series of labs derived from real world performance tuning issues. Students also learn about various tools and mechanisms for monitoring, profiling and tuning Java applications.
Prerequisites
- Develop applications by using the Java programming language
- Implement interfaces and handle Java programming exceptions
- Use object-oriented programming techniques
- Java Programming Language
:
Skills Gained
- Apply basic performance tuning principles to a Java application
- Monitor performance on Solaris, Linux and Windows at the OS/JVM/Application level
- Profile the performance of a Java Application
- Tune the performance of a Java application at the language level
- Describe various garbage collection schemes
- Tune garbage collection in a Java application
- Apply best practices for performance testing
Course Content
Introduction to Java Performance Tuning
- Course Introduction
- Course Agenda
JVM and Peformance 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
- NetBeans Profiler, Oracle Solaris Studio, and jmap/jhat
- Profile CPU Usage
- Profile JVM Heap
- Find Memory Leaks
- Identify Lock Contention
- Heap Profiling Anti-patters
- 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
- The use of Finalizers
Performance Tuning at the Language Level
- String-efficient Java Applications
- Collection Classes
- Using Threads
- Using I/O Efficiently