Masterclass: Reactive and Asynchronous Java

Date: 15 – 16 March 2018, Cluj-Napoca
Training fee: €600/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

Reactive and Asynchronous applications are growing in popularity, but what is the best way to build them? This course teaches you how to apply the latest concurrency techniques to develop state of the art Java applications. With the rise of Microservices and Service Oriented Architectures, asynchronous concurrency is now critical to day-to-day Java development.

We start off by reviewing the differences between asynchronous and synchronous programming. You then build upon this theory by refactoring a project using different modern concurrency techniques including promises using Java 8’s CompletableFuture, actors using Akka and reactive streams using RxJava. You’ll learn the good, the bad and the ugly between these approaches in terms of compositionality, testability and simplicity.

Course Outline

Day 1

Asynchronous vs Synchronous Programming

Servlets
Asynchronous Servlets (3.0) and Spring
Why use asynchronous communications?
Solving the C10K Problem and the Microservices Performance problem
Timeouts

Approaches to Concurrency

The Reactive Manifesto and Functional Reactive Programming
Models of Concurrency: Event Based, Promises, The Actor Model, Reactive Streams
The full stack – from application right down to the OS

Promises using CompletableFutures

What is a Promise?
Motivation
ExecutorService
Creation patterns
Composition patterns
Exception handling
Sequence patterns

Day 2

The Actor Model with Akka

What is the Actor model?
Why and when would you use actors?
Using Akka
Testing actors
Recovering from exceptions
Integration patterns

Reactive Streams with RxJava

Introducing Reactive Streams
Connecting Reactive streams to databases and web sockets
Pull vs. Push models
Using RxJava
Java 9 Flow API
Alternative Reactive Stream Implementations
Threading and Back Pressure

The trainer

Richard is an empirical technologist and solver of deep-dive technical problems. Recently he has written a book on Java 8 Lambdas for O’Reilly. He’s worked as a developer in many areas including Statistical Analytics, Static Analysis, Compilers and Networking.

He is a leader in the London Java Community and runs OpenJDK Hackdays. Richard is also a known conference speaker, having talked at JavaOne, Devoxx, JFokus, DevoxxUK, Geecon, JAX London and Codemotion. He has obtained a PhD in Computer Science from The University of Warwick.

Training fee: €600/participant plus VAT, only 25 seats available
To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Browse more masterclasses here.

Leave a Reply

Your email address will not be published. Required fields are marked *