Java Performance Training Course
The course is intended for Java programmers who want to produce efficient applications. After consultation with client, the course can be conducted in a special tool version, for people who only need to detect performance problems (testers, administrators) - in this case programming in Java is not required.
During the training, participants will learn about process and modern tools for producing efficient software in Java. They learn performance-related traps, benchmarking, profiling, tuning, memory analysis, performance tricks using collections or IO. Learned topics and tools are applicable regardless of the technologies used in the project, because we focus on language-level performance, tools and embedded libraries. Tuning discusses parameters of JVM provided by Oracle.
Course Outline
Introduction
Java Virtual Machine Performance overview
- Java memory model
- Just In Time Compiler
- Performance methodology
Java Garbage Collection
- GC Basics
- Garbage Collecting Algorithms
- Types of GC Collectors
JVM Monitoring
- command line monitoring
- Java Flight Recorder and Mission Control
- Profiling tools
Microbenchmarking
- JMH microbenchmark framework
- creating and configuring a benchmark
- execution and result interpretation
JVM Tuning
- Memory tuning
- Choosing GC type
Summary and Next Steps
Requirements
- Programming in Java
Audience
- Java programmers
Need help picking the right course?
Java Performance Training Course - Enquiry
Java Performance - Consultancy Enquiry
Consultancy Enquiry
Testimonials (2)
Trainer was good at talking through topics in details and making it easy to understand
Lewis Nangle - AquaQ Analytics
Course - Java Performance
-code examples really helped with understanding -Fulvio came across as very knowledgeable and explained everything thoroughly
Paul Doherty - AquaQ Analytics
Course - Java Performance
Related Courses
GlassFish Administration
21 HoursGlassFish Administration Training introduces participants to the secrets of the installation, configuration, management, monitoring GlassFish server. Training is open to future GlassFish server administrators.
Administering GlassFish Server with Java EE applications introduction
21 HoursGlassFish is an open-source application server. This three-day course provides an introduction to administering GlassFish Server with Java EE applications.
Gosu Programming
7 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at programmers who wish to download, install, and implement Gosu's static typing and pragmatic approach in programming.
By the end of this training, participants will be able to program using Gosu to write simple scripts for libraries, user interface elements, rules, and more.
Guava
21 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at Java programmers who wish to learn about Guava and how to utilize Guava in programming.
By the end of this training, participants will be able to:
- Learn how to use Guava in Java programming.
- Utilize Guava to facilitate standard coding practices.
- Make easy to read and concise Java codes.
Jakarta EE Fundamentals
28 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to use Jakarta EE to build, migrate, and deploy cloud-native applications, utilizing the full implementation of Java EE 8 and cloud computing technology.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing Jakarta EE applications.
- Create and build database-driven applications with Jakarta Persistence API.
- Develop and integrate Jakarta EE applications with Jakarta RESTful web services for portability.
- Containerize cloud-native applications for cloud deployment with Docker.
Developing Applications for the Java EE 7 Platform Ed 1
35 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to install, manage, and implement Java EE 7 to develop enterprise applications.
By the end of this training, participants will be able to create, manage, implement, deploy, and secure enterprise applications and web services using Java EE 7.
Java EE 8 for Beginners
21 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to use Java EE 8's new features to build cloud applications.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing.
- Understand the concepts and architecture behind Java Enterprise Edition (JEE).
- Create a sample cloud application (or web service).
- Interface an application with a database.
- Write and manage stateful components using dependency injection.
- Write integration tests for Java EE components.
Java EE 8 Advanced
21 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to use Java EE 8 to build and deploy cloud-ready enterprise applications, leveraging advanced Java technologies and APIs.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing enterprise applications with Java EE 8.
- Implement business logic for designing and building business-oriented applications.
- Integrate microservices with Java EE 8 components to transform single-tiered applications into highly scalable and cloud-ready applications.
- Understand and apply Java EE 8 design patterns and coding best practices.
Microservice Development with Java EE 8, Docker, and Kubernetes
28 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to containerize their Java EE 8 applications and run them as microservices in the cloud.
By the end of this training, participants will be able to:
- Build and deploy Java microservices in Docker containers.
- Manage Docker containers using Kubernetes.
- Integrate microservices with an existing monolithic system.
- Monitor, test, and secure microservices.
- Troubleshoot containers and orchestration environments.
Enterprise Java Programming with Java EE and JBoss (EJB 3.0)
28 HoursThis 4-day course is for programmers who already know the Java language and wish to exploit the Enterprise Java Beans 2.0 technology while becoming aware of the security implications of distributing applications. This course has a large practical component which includes developing an e-commerce application based on Enterprise Java Beans. The course uses the JBoss Application Server.
Java Virtual Machine (JVM)
7 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at Java developers who wish to use JVM tools and features to run Java programs.
By the end of this training, participants will be able to:
- Understand JVM and how it works.
- Learn about reflection and the different memory areas.
- Understand how to use the JVM tool interface.
- Use JVM to run Java programs on any device or operating system.
NetBeans
14 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to use NetBeans to develop applications with Java and other programming languages.
By the end of this training, participants will be able to:
- Learn about NetBeans and how it works.
- Learn how to use NetBeans in Java programming.
- Use NetBeans to create templates and projects.
Enterprise Application Integrations with Spring Integration
14 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at developers who wish to use Spring Integration to design and build high-quality and efficient enterprise integration solutions.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing integration solutions with Spring Integration.
- Understand the Spring Integration features, core concepts, and components.
- Learn how to implement enterprise integration patterns.
- Build message-driven enterprise applications with Spring Integration.
- Enable integration with external streams and NoSQL databases (Apache Kafka, MongoDB, Redis, etc.).
- Monitor and manage the messaging flows across endpoints.
Vaadin
14 HoursThis instructor-led, live training in Macao (online or onsite) is aimed at programmers, java developers, and anyone who wishes to use Vaadin to develop and deploy applications.
By the end of this training, participants will be able to:
- Setup and configure a Vaadin project.
- Understand the fundamentals of Vaadin in developing applications.
- Use Vaadin to develop applications.
Vert.x: Build a Reactive Application on JVM
14 HoursIn this instructor-led, live training in Macao, participants will learn how to use Vert.x to create an asynchronous, event-based web application.
By the end of this training, participants will be able to:
- Understand and use the different components (core, web, client, etc.) in the Vert.x stack.
- Use Vert.x to create network utilities, HTTP/REST microservices, high volume event processing, back-end message-bus applications, etc.
- Execute an app that can handle high concurrency using minimal kernel threads.
- Use Vert.x's APIs to support Java, JavaScript, Groovy, Ruby, Ceylon, Scala, Kotlin, etc.
- Unit test asynchronous code with Vert.x-Unit.
- Deploy and scale an app with minimal hardware.