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
Open Training Courses require 5+ participants.
Java Performance Training Course - Booking
Java Performance Training Course - Enquiry
Java Performance - 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
Upcoming Courses
Related Courses
NetBeans
14 HoursThis instructor-led, live training in Bulgaria (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.
Guava
21 HoursThis instructor-led, live training in Bulgaria (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.
Vaadin
14 HoursThis instructor-led, live training in Bulgaria (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.
Enterprise Application Integrations with Spring Integration
14 HoursThis instructor-led, live training in Bulgaria (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.
Jakarta EE Fundamentals
28 HoursThis instructor-led, live training in Bulgaria (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.
Quarkus for Developers
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at developers who wish to use Quarkus to build, test, and deploy applications, fully-powered with Java, but with less resource utilization.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing applications with Quarkus.
- Build, compile, and run applications in native mode using GraalVM.
- Utilize Quarkus tooling and extensions for building native applications using Maven.
- Containerize, execute, and deploy applications with Docker.
Introduction to Apache Struts 2
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at web developers who wish to use Apache Struts 2 to create web applications.
By the end of this training, participants will be able to:
- Build Java MVC applications.
- Handle large projects and support REST applications.
- Secure Apache Struts 2 from vulnerabilities such as remote code execution attacks.
Learning Gradle
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at java developers who wish to use Gradle to automate the Java web development process.
By the end of this training, participants will be able to:
- Build a Java application with Gradle.
- Manage dependencies in a Java application.
- Use Gradle in the cloud.
Introduction to JavaServer Faces
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at web developers who wish to use JavaServer Faces to create enterprise-level web applications.
By the end of this training, participants will be able to:
- Build a JavaServer Faces CRUD application that connects to a database.
- Validate forms through filtering input and sanitizing output.
- Use JDBC APIs and MySQL to perform operations on data.
- Secure Java EE web applications.
OpenXava
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at developers who wish to develop Java Enterprise applications with OpenXava.
By the end of this training, participants will be able to:
- Install and configure OpenXava.
- Select and use other Java tools and frameworks together with OpenXava.
- Develop an advanced database driven business application.
- Test and debug an OpenXava application.
Advanced Spring Boot
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at experienced Spring Boot developers who wish to use Spring Boot's advanced features to further enhance, secure and test complex Spring Boot applications.
By the end of this training, participants will be able to:
- Customize the Spring WebMVC framework to enhance the decoupling of web applications.
- Serialize and de-serialize objects using Jackson Serialization Views.
- Store and secure user data in a database.
- Use Spring Sessions to manage user session information in a distributed fashion.
- Automate the testing of Spring WebMVC applications.
- Monitor and measure application performance.
Angular and Spring Boot
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at web developers who wish to use Angular and Spring Boot to build full stack applications.
By the end of this training, participants will be able to:
- Develop a full stack application with Angular and Sping Boot.
- Build a backend application with Spring Boot.
- Create frontend applications with Angular.
- Use Spring Security to configure authentication for a full stack application.
Apache Camel and Spring Boot
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at web developers who wish to program in Spring Boot to build Apache Camel applications.
By the end of this training, participants will be able to:
- Develop Apache Camel applications with Spring Boot.
- Apply error monitoring and alerting for Apache Camel applications.
- Use Apache Camel for integration solutions.
Building Microservices with Spring Boot, Docker, and Kubernetes
21 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at intermediate to advanced-level developers who wish to develop microservices using Spring Boot, Docker, and Kubernetes.
By the end of this training, participants will be able to:
- Understand the microservices architecture.
- Build production-ready microservices using Spring Boot.
- Understand the role of Docker in microservices.
- Set up Kubernetes cluster to deploy microservices.
Spring Boot, React, and Redux
14 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at web developers who wish to build functional front-end and back-end web applications with Spring Boot, React, and Redux.
By the end of this training, participants will be able to:
- Build a front-end application with React and Redux.
- Create RESTful APIs with Spring Boot.
- Secure web services with Spring security and JWT web tokens.