Java Performance Tuning Workshop

JVM Tuning Workshop

The Java Performance Tuning Workshop training course covers the same content as the Java Performance Tuning Training course; however, it includes two additional days of customer application-specific tuning.

The Java Performance Tuning workshop examines the philosophies, tools, and processes to successfully tune a Java application. Assuming most students have not experimented with performance tuning, the course begins with an introduction of performance tuning, exploring what is and is not considered performance tuning. The general performance tuning discussion is made relevant through the examination of the Java platform and the Java Virtual Machine architecture. With the appropriate foundation laid, the course examines common tuning tools and their applications. The meat of the course is found in the performance tuning process discussion and is made practical through a hands-on examination of general tuning best practices and heap tuning.

Course Summary

Purpose: 
Learn how to apply Java Performance Tuning practices to YOUR application.
Audience: 
Advanced Java programmers and system administrators needing to increase Java performance by tuning their Java applications.
Skill Level: 
Learning Style: 

Workshops are instructor-led lab-intensives focused on the practical application of technologies through the facilitation of a project-related lab. Workshops are just the opposite of Seminars. They deliver the highest level of knowledge transfer of any format. Think wide (breadth) and deep (depth).

Workshop help
Duration: 
5 Days
Productivity Objectives: 
  • Understand the performance tuning process
  • Establish performance characteristics and measurement strategies
  • Identify and determine potential causes for hot spots, areas of latency, and bottlenecks in your application
  • Design a performance tuning strategy for your application based on identified underperforming and established characteristics
  • Work with common tuning tools such as profilers, pstat, top, visual vm, etc.
  • Tune the JVM, including GC algorithms, memory profiles, etc.
Java Performance Tuning Workshop is part of the Java SE Training curriculum.
All of our Java SE courses can be delivered using the IDE of your choice using either JDK 1.5, JDK1.6, JDK1.7 or JDK1.8 (Java 8).

What You'll Learn

In the Java Performance Tuning Workshop training course, you’ll learn:

  • Introduction to Performance Tuning
    • Background on tuning
    • Why do we need to tune
    • What are symptoms of a system that needs tuning
    • What outcomes should I expect
  • Java Virtual Machine Architecture
    • Overview of Java as a platform
    • Java Virtual Machine Architecture
    • Key Components of the Java Virtual Machine
    • Byte-code verifiers, class loaders, and security
    • Memory heaps and stacks
    • Garbage collection
  • Java Tuning Tools
    • Basic tools
    • Timing tools
    • Load Testing Tools and Techniques
    • JVM Profiling Tools (Profilers)
    • Memory Management and Monitoring
    • Operating System and Network Monitoring tools
  • Java Tuning Process
    • Java Runtime Environment and System constraints
    • Calculating & Measuring JVM / JRE overheads
    • Identifying “startup” components of JVM / JRE
    • Calculating and Measuring Hardware and OS Constraints
  • Performance planning
    • Defining performance specifications, variations, and objectives
    • Defining and Capturing a benchmark (a baseline)
    • Tuning from the benchmark to the objectives
    • Measuring improvements with Profiling and Monitoring tools
  • Fundamentals of Garbage Collection and Heap Tuning
    • Understanding JVM memory and lifecycles
    • Following an object through a lifecycle
    • GC algorithms: Which one, when – tuning GC algorithms
    • JVM Command line switches
    • Measuring improvements
  • Tuning Best Practices
    • Overview of the tuning methodology
    • Understanding the 80/20 rule
    • Can you be smarter than the JIT?
    • Getting big gains quick
    • Understanding the overhead of Logging, Exceptions, Strings, and IO
  • Tuning Java EE Applications
    • Review of Java EE and Java EE Application Server platforms
    • Identifying and tuning common bottlenecks in Java EE applications
    • Identifying and tuning resource pools, external resources, and dependencies
  • Best practices relating to EE tuning

Meet Your Instructor

Simon

Simon has over 15 years of experience defining, developing, and delivering software development training programs.

As a senior instructor and courseware developer for Sun Microsystems, Simon developed and delivered Java training courses for Sun Educational Services’ internal and external customers. While at Sun, he was a guest presenter at JavaOne, Java University, and other software trade shows. Simon’s most significant accolade was his work as the development lead in the design, development,...

Meet Simon »
Jean Photo
Jean

Jean brings years of development experience into her teaching, making the learning experience practical for her students. Originally a Smalltalk developer, Jean has an expansive knowledge of object-oriented (OO) development, analysis, and design. Jean has worked in every stage of the software development process for a variety of businesses – from small non-profits, to government agencies, to global enterprises.

Jean was also one of the top instructors at Sun Microsystems in North America and Europe....

Meet Jean »
Michael Photo
Michael

Michael owns and operates Inkling Research, a consulting group of technical specialists. His work experience includes systems administration, application and operating system development, and the design and deployment of several network and storage-based systems. Michael is a seasoned instructor with 18 years experience in training, course development, mentoring, and practice management. His educational credentials include a B.A. from UC Davis, an M.A from Kent State University, and doctoral coursework at Claremont...

Meet Michael »
Anil Photo
Anil

Anil is a seasoned software engineer with over 16 years of Java development experience.

Anil started his career as a Unix programmer, slinging C-code, writing shell scripts, and teaching others how to use Unix back when Unix was still a toddler. Anil’s expertise in Unix, C, and C++ allowed him to become a member of Technical Staff at ATT / Bell labs. During his tenure at Bell Labs, Anil led the creation of software tools that simulated network traffic, in particular, cellular...

Meet Anil »
Marnie picture
Marnie

Marnie brings 15 years of experience delivering programming related training. During that time she has taught for top-technology companies including: Sun (and later Oracle) certified Java classes, RedHat Certified JBoss administration courses, Spring Source Certified Spring and Hibernate courses. Her classes have run the gamut from introduction to programming classes to Java EE web services and much of the Java EE stack in between.

She has a passion for teaching, which is evident in her presentations and...

Meet Marnie »
Peter

Peter is a Senior Java Developer / Architect / Manager with over 20 years of experience in the analysis, design, and development of computer systems, including 20 years of experience architecting and delivering web-based IT solutions.  Peter manages and leads an experienced team of Java and object-oriented programming specialists that provide a wide range of technical services.  Peter founded Java Enterprise Solutions in 1998 after working for Sun Microsystems advancing Java and Java technologies. While at...

Meet Peter »
Phil Photo
Phil

Phil was a member of the second cohort of instructors to be trained by Sun to teach their Java courses. and has lectured at the undergraduate and graduate levels at San Jose State University and the University of California. He has been a Java developer in Silicon Valley for over 15 years, specializing in control systems and visualization of large complicated data sets. He is completing a PhD in bioinformatics, using his Java skills to study the effects of marine life on climate change. Phil has assisted in the...

Meet Phil »
Sujee Picture
Sujee

Sujee has been developing software for 15 years. In the last few years he has been consulting and teaching Hadoop, NOSQL and Cloud technologies. Sujee stays active in Hadoop / Open Source community. He runs a developer focused meetup and Hadoop hackathons called ‘Big Data Gurus’. He has presented at variety of meetups. Sujee contributes to Hadoop project and other open source projects. He writes about Hadoop and other technologies on his website.

Meet Sujee »
Photo of Instructor kito
Kito

Kito D. Mann is the Principal Consultant at Virtua, Inc., specializing in enterprise application architecture, training, development, and mentoring with JavaServer Faces, HTML5, Web Components, portlets, Liferay, and Java EE technologies. He is also the editor-in-chief of JSFCentral.com (www.jsfcentral.com), co-host of the Enterprise Java Newscast (http://www.enterprisejavanews.com), and the author of JavaServer Faces in Action (Manning). Mann has participated in several Java Community...

Meet Kito »

Contact us to learn more

Not all training courses are created equal. Let the customization process begin! We'll work with you to design a custom Java Performance Tuning Workshop training course that meets your specific needs.

DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. We’ve provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.

About Develop Intelligence
Di Clients

surveyask

Need help finding the right learning solution?   Call us: 877-629-5631