O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Hands-On Reactive Programming with Java 12

Video Description

Using the reactive paradigm to create fast and non-blocking apps

About This Video

  • Understand the purpose behind RxJava development and use the right tools to make your application Reactive and asynchronous
  • Apply Reactive principles with Java to make your app responsive, reliable, and scalable
  • Implement backpressure with Reactive constructs: subscription and subscriber

In Detail

Reactive programming is a programming paradigm oriented toward data flows and the propagation of change: programming with asynchronous data streams. Apps in recent times have an abundance of real-time events of every kind that create a highly interactive experience for the user. However, the right tools are needed to manage these, and Reactive programming is the answer.

This course is a step-by-step guide to creating applications with Java 12 by applying Reactive programming. You will get hands-on experience; each section will build on the previous one, so that you will be able to make your app responsive and reliable by implementing Reactive principles with Java. You'll also apply the best data structures and algorithms that optimize functions—all using functional Reactive programming.

By the end of this course, you'll be fully equipped with the tools and techniques needed to implement robust, event-driven, and Reactive applications.

Downloading the example code for this course: You can download the example code files for all Packt video courses you have purchased from your account at http://www.PacktPub.com. If you purchased this course elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

Table of Contents

  1. Chapter 1 : Reactive API – Most Important Aspects
    1. The Course Overview 00:02:23
    2. Flow: The Main Entry Point of Every Reactive App 00:05:12
    3. Subscriber versus Publisher: When to Use Which 00:05:48
    4. Hot Publisher: Why It Is Hard to Take Control Over It 00:04:13
    5. Cold Publisher: Pairing with Back Pressure 00:04:29
  2. Chapter 2 : Publishing and Consuming Messages
    1. Consuming Messages: Creating a Subscriber 00:04:48
    2. Using Publisher to Emit Stock Events 00:03:04
    3. Testing Stock Reactive Flow 00:04:16
    4. Handling Errors in Subscriber 00:05:57
  3. Chapter 3 : Transformation of Messages
    1. Flow.Processor API for the Skeleton of Transformation 00:04:47
    2. Using SubmissionPublisher for Proxying Event to Another Publisher in the Chain 00:02:33
    3. Plugging the TransformProcessor for Transformation Logic 00:03:24
    4. Testing Stock Transformation Logic 00:04:37
  4. Chapter 4 : Overproducing Publisher with Backpressure
    1. Leveraging Subscription Object for Controlling the Number of Fetched Stocks 00:04:49
    2. Controlling the Speed of Consumer with AtomicInteger 00:04:39
    3. Creating Overproducing Publisher 00:04:51
    4. Testing Backpressure in Stock Exchange Application 00:03:15
  5. Chapter 5 : Reactive Java 12 with Alternative Implementations
    1. RxJava – Observables Abstractions 00:04:55
    2. RxJava – Advanced Operations – flatMap 00:05:09
    3. Reactor – Flux 00:05:07
    4. Reactor – Combining Publishers 00:04:59
  6. Chapter 6 : Reactive Microservices
    1. Reactive Spring Boot 00:04:26
    2. Creating Reactive Data Access Layer 00:05:34
    3. Creating Reactive Controller 00:03:04
    4. Testing Reactive Microservices 00:05:34