Expert Led Training Courses

About Jfokus Training:
Get taught directly by the experts and interact with peers in an engaging informal environment. These are intensive, deep dive training sessions designed for advanced IT professionals which incorporate expert-led presentations.

Become Proficient in Java Performance Tuning (4 days)

In this new expert-led course, you will learn a blend of tuning methodology, performance theory and practical tips on solving difficult performance problems. The tools learned are all freely available or open source and will equip you to immediately apply what you have learned in your workplace. No more suffering through slow, under performing applications. You will learn how to develop code with performance as the goal and the end user in mind.

Kirk Pepperdine

Kirk Pepperdine, Kodewerk

Led by Kirk Pepperdine - a recognized expert in Java Performance Tuning, Java Champion, international speaker and trainer, and co-contributor to the successful Java Performance Tuning Newsletter - you'll learn in four days what would otherwise take years of self-study. Kirk has fixed numerous critical performance issues and has saved millions in lost revenue and downtime for his clients. Full of insight and packed with experience, this course can help you do the same.

Become Proficient in Java Performance Tuning (4 days)

This comprehensive four day workshop will provide you with techniques that have been proven to improve your ability to find and fix performance bottlenecks. What you won't find are tips and tricks that will be obsoleted with the next release of Java. Instead the course focuses on a methodology that has evolved from years of experience solving performance problems found in a variety of languages running on number of different execution platforms. During the course of the seminar we will look at how Java works, tooling to expose performance bottlenecks and a methodology that helps you to decide on which tools should be used. The workshop contains more than a dozen exercises each taken from real world problems and each designed to challenge your thinking. During the four days you'll learn how to:

  • Quickly identify the root causes of poor performance in your applications
  • Eliminate conditions that will prevent you from finding performance bottlenecks
  • Find critical supportive evidence before deciding on a potentially expensive course of action
  • Find performance issues before they make their escape into your production system

The course will cover:

Day 1 - Performance Testing
Day 2 - All about the JVM
  • Defining performance and performance tuning
  • Defining the user experience
  • Psychology of performance tuning
  • Performance tuning methodology
  • Performance tuning model
  • System monitoring
  • Response time budgeting
  • Usage patterns
  • Test harnesses
  • Load, stress, and endurance testing
  • Micro benchmarking
  • Macro benchmarking
  • Analysis of benchmarking results
  • Factors that affect benchmarks
  • Benchmarking exercises
  • HotSpot internals
  • HotSpot monitoring
  • HotSpot tools
  • HotSpot tuning
  • Memory management
  • Garbage collection
  • Object life cycles
  • Monitoring garbage collection
  • Tools for garbage collection analysis
  • HotSpot and Garbage collection exercises
Day 3 - Profiling
Day 4 - Putting it all together
  • Tools to find latency
  • Inter-process communications monitoring
  • JDBC monitoring
  • Java Management eXtentions (JMX)
  • Thread profiling
  • Execution profiling
  • Memory profiling
  • Memory leak and loitering objects diagnosis and repair
  • Thread dump analysis
  • Case Studies
  • Monitoring and profiling exercises
  • Obtaining higher levels of concurrency
  • Performance tuning tactics
  • Review of performance sensitive algorithms
  • A series of indepth performance tuning exercises