Tags
Language
Tags
December 2024
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4

Modern Java - Multithreading In Java Using Virtual Threads

Posted By: ELK1nG
Modern Java - Multithreading In Java Using Virtual Threads

Modern Java - Multithreading In Java Using Virtual Threads
Published 2/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.68 GB | Duration: 3h 15m

A Complete Modern Concurrency course to learn everything about Virtual Threads,Structured Concurrency and more.

What you'll learn

You will learn how to harness the power of Virtual Threads to create highly scalable and efficient Java applications.

What are Platform Threads and the limitations attached to it ?

Learn about Virtual Threads and how to work with them by coding it.

Learn about the advantages and internals of virtual threads.

Learn to launch one million virtualthreads.

Learn to use Structured Concurrency API to implement business logic.

HTTP calls using Virtual Threads.

Build a SpringBoot Application using Virtual Threads.

Compare the performance of Platform Threads vs Virtual Threads in a Springboot App using Apache "ab" benchmarking tool.

Use Virtual Threads by building hands-on projects and real world examples.

Requirements

Prior Java Experience

Java 21 or higher

Intellij or Eclipse or Similar IDE

Description

"Modern Java - Multithreading in Java using Virtual Threads" is a comprehensive course designed to equip Java developers with advanced skills in parallel programming. In this course, you will delve into the intricacies of multithreading in Java, exploring the latest advancements with Virtual Threads.You will learn how to harness the power of Virtual Threads to create highly scalable and efficient Java applications. Through hands-on projects and real-world examples, you will master techniques for managing concurrency, synchronizing threads, and avoiding common pitfalls in multithreaded programming.Getting Started With the CourseIn this section, I will give you all an introduction to the course and what to expect from this course.Getting Started with Java Threads [Platform Threads]In this section, I will give you all an introduction to Java Threads and its limitations.Getting Started with Virtual ThreadsIn this section, I will give you all an introduction to Virtual Threads and dive into some detailed concepts.Concurrency APIs - Threadpools,Future, ExecutorService & CompletableFutureIn this section, I will cover the concurrency APIs Future and CompletableFuture.Structured Concurrency using Virtual Threads [Preview Feature]In this section, I will cover Structured Concurrency and learn to write business logic using Structured Concurrency.HTTP calls using Virtual ThreadsIn this section, we will code HTTP Clients and use virtual threads to execute them.Using Futures with Virtual ThreadsIn this section, we will learn to use Virtual Threads with Future and ExecutorService.Build a SpringBoot Application using Virtual ThreadsIn this section, we will code and learn to integrate virtual threads with springboot application.Load Test using "ab - Apache HTTP server benchmarking tool"In this section, we will run the load test and compare the performance between Spring MVC using VirtualThreads and Traditional Spring MVCWhether you're a seasoned Java developer looking to enhance your skills or a newcomer interested in mastering the latest trends in Java development, this course will provide you with the knowledge and tools to take your Java multithreading skills to the next level.

Overview

Section 1: Getting Started With the Course

Lecture 1 Course Introduction

Lecture 2 Pre-requestites

Section 2: Course Slides and Source Code

Lecture 3 Course Slides

Lecture 4 Source Code

Section 3: Getting Started with Java Threads [Platform Threads]

Lecture 5 What is a Platform Thread, Why do we need them ?

Lecture 6 Java Installation

Lecture 7 Base Project Setup in Intellij

Lecture 8 Lets Create Platform Threads

Lecture 9 Thread Internals - How it works behind the scenes ?

Lecture 10 Thread Scalability and Blocking nature of Java Threads - Drawbacks

Lecture 11 Effects of Threads in a Backend WebApplication

Section 4: Getting Started with Virtual Threads

Lecture 12 Introduction to Virtual Threads

Lecture 13 Virtual Threads Scalability - Lets Launch 1 million threads

Lecture 14 How VirtualThreads works under the hood? - Mounting/Unmounting Virtual Threads

Lecture 15 Mounting and Unmounting threads in Action

Lecture 16 Virtual Threads - yield() and run() using Continuation API

Lecture 17 Pinned Virtual Threads

Lecture 18 Important Facts about Virtual Threads

Section 5: Future and CompletableFuture

Lecture 19 Evolution of Concurrency APIs in Java

Lecture 20 Parallelism vs Concurrency

Lecture 21 Introduction to Future

Lecture 22 ProductService using Future API and ExecutorService

Lecture 23 CompletableFuture API - ProductService using CompletableFuture API

Section 6: Structured Concurrency using Virtual Threads [Preview Feature]

Lecture 24 Introduction to Structured Concurrency

Lecture 25 ProductService using StructuredTaskScope.ShutdownOnFailure()

Lecture 26 JUnit test for ShutdownOnFailure policy during Exceptions

Lecture 27 ProductInfoService using StructuredTaskScope.ShutdownOnSuccess()

Lecture 28 Add DeliveryService into the ProductService - New Business Requirement

Section 7: HTTP calls using Virtual Threads

Lecture 29 Set Up Simple WebServer

Lecture 30 Build the HttpClient for ProductInfo service

Lecture 31 Lets make real HTTP calls in ProductService using VirtualThreads

Section 8: Using Futures with Virtual Threads

Lecture 32 Virtual Threads + Future & ExecutorService

Section 9: Build a SpringBoot Application using Virtual Threads

Lecture 33 Using Virtual Threads with SpringBoot App

Lecture 34 Setup the Remote Service and Client Application

Lecture 35 Configure the springboot app to use VirtualThreads

Section 10: Load Test using "ab - Apache HTTP server benchmarking tool"

Lecture 36 Set up and run benchMarking using ab

Lecture 37 Load Test - VirtualThreads Spring MVC vs Traditional Spring MVC

Whether you're a seasoned Java developer looking to enhance your skills or a newcomer interested in mastering the latest trends in Java Concurrency.,Java developers who would like to take their knowledge to the next level to write more concise and readable multithreaded code