Workshop: Java Performance Workshop

Location: Cantor & Jolson, 9th fl.

Duration: 9:00am - 4:00pm

Day of week: Thursday

Level: Intermediate

Prerequisites

Participants should have a laptop with Java 8 or 11 installed. Exercises will be provided.

This comprehensive one-day workshop is packed 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 a number of different execution platforms.

This workshop contains several exercises each taken from real-world problems and designed to challenge your thinking. During this day, you will learn things like:

  • Quickly identify the root causes of poor performance in your application
  • 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

Topics this course may cover include:

  • Defining performance and performance tuning
  • 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 and macro benchmarking
  • Analysis of benchmarking results
  • Factors that affect benchmarks
  • Benchmarking exercises
  • HotSpot internals, monitoring, tools, & tuning
  • Memory management
  • Garbage collection basics
  • Object Lifecycle
  • Monitoring & analysis garbage collection
  • Inter-process communications monitoring
  • JDBC monitoring
  • Java Management eXtentions (JMX)
  • Thread profiling
  • Execution profiling
  • Thread monitoring
  • Memory profiling
  • Memory leak and loitering objects diagnosis and repair
  • Thread dump analysis
  • Case Studies
  • Monitoring and profiling exercises

Speaker: Kirk Pepperdine

Java Performance Expert & Java Champion

Kirk has been working in high performance and distributed computing for nearly 20 years. His focus has primarily been on performance, working on architecting, developing, and tuning applications running on Cray and other high-performance computing platforms. Kirk now specializes in Java, where he works in all aspects of performance and tuning in each phase of a project life cycle. Author, speaker, consultant, Kirk was recognized as a 2006 Java Champion recipient for his contributions to the Java community.

Find Kirk Pepperdine at

Other Workshops:

Day: Thursday [Half Day]
by
Day: Thursday [Half Day]
by
Day: Friday [Full Day]
Day: Thursday [Half Day]
by

Tracks

Monday, 24 June

Tuesday, 25 June

Wednesday, 26 June

  • Architecting For Failure

    More than just building software, building deployable production ready software in the face of guaranteed failure.

  • 21st Century Languages

    Lessons learned from building languages like Rust, Go-lang, Swift, Kotlin, and more.

  • Building High-Performing Teams

    What “high-performing team” means and how to build one effectively depends on context. This track will share different experiences of building high-performing teams in order to highlight how different contexts lead to different solutions but also what typically stays the same because we’re still dealing with humans trying to work together. How do different forces affect the building of high-performing teams.

  • Software Defined Infrastructure: Kubernetes, Service Meshes, & Beyond

    Deploying, scaling, managing your services is undifferentiated heavy lifting. Hear stories, learn techniques, and dive deep into software infrastructure.

  • High-Performance Computing: Lessons from FinTech & AdTech

    Killing latency and getting the most out of your hardware.