Extreme Java Performance Tuning

Rating:
1 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 5
Loading...
Please Log in or register to rate

Extreme Java Performance Tuning

JPO-303

This course covers everything there is to know about java performance with details and tips throughout the development lifecycle, from planning to development to profiling and tuning in the lab or in production. individual chapters will discuss memory management, garbage collection, just in time compiler, multithreading, collections, sdk tips, native memory, profiling, monitoring, analyzing heap dumps and thread dumps.

Course Objectives

Upon completion of the course, participants will be able to:

• Understand how to approach performance problems
• Understand the steps required to assure adequate performance
• Monitor Windows and Linux resource utilization
• Monitor the JVM
• Profile Java applications
• Tune garbage collectors
• Tune Just in Time (JIT) compilers
• Java 8 new features and performance considerations

Audience

Target Audience:
Experienced Java developers, performance engineers, consultants, and architects interested in improving the performance of their Java technology applications

Prerequisites:
Good working knowledge of java

Course Topics

Module 1 – Introduction to Performance

  • Perceived performance
  • Developing high performance software
  • Capacity Planning
  • Performance KPIs
  • Performance Testing
  • Performance Testing tools
  • Coding for performance
  • Microbenchmarks

Module 2 – Monitoring the OS

  • CPU
  • IO
  • Network
  • Windows
  • Linux
  • CPU And Java

Module 3 – Java Monitoring Tools

  • JVisualVM
  • JMC
  • JFR
  • Linux command line

Module 4 – JIT Compiler

  • Compiler Types
  • Compiler Levels
  • Compiler Flags
  • Code cache
  • Compilation thresholds
  • OSR
  • Optimizations
  • Deoptimizations
  • Monitoring compilation

Module 5 – Memory

  • JVM Memory model
  • Tuning Memory
  • Heap Dumps
  • Histograms
  • Troubleshooting memory issues
  • Canonical Objects
  • Object Lifecycle
  • Object Pools and Object Reuse
  • Thread Local
  • Reference API (Weak, Soft, Phantom)

Module 6 – JSE Performance

  • Buffered IO
  • Classloading
  • Random
  • Exceptions
  • Strings
  • Collection API

Module 7 – Garbage Collection

  • In depth review of GC algorithms
  • Batch VS Online
  • GC Optimizations
  • GC Flags
  • Best Practices

Module 8 – Multithreading

  • Thread Pools
  • ForkJoinPool
  • Automatic Parallelization
  • Synchronization
  • Compare And Swap
  • Monitoring Threads

Module 9 – JEE Performance

  • Web Container Performance
  • EJB 3 Session beans
  • XML & XML Validation
  • JSON
  • Factories

Module 10 – JDBC and DB Performance

  • JDBC Driver Types
  • Prepared Statements
  • Statement pools
  • JDBC Connection Pools

Module 11 – Native Memory

  • Basic Concepts
  • NMT (Native Memory Tracking)
People also viewed
© Copyright - Skilit - Site by Dweb