Guided Project: Reactive Stream Processing with Kafka

Scott Robinson
David Landup
Arpendu Kumar Garai

As we discussed in Lesson 11, where we were introduced to Reactive Kafka, we delved into the term “reactive systems”. Systems that are flexible, loosely-coupled, scalable, and highly responsive are referred to as reactive systems. Applications must display elasticity, resilience, and responsiveness through a foundation of asynchronous, non-blocking communication in order to achieve this condition. This asynchronous communication establishes a boundary between components that ensures loose coupling, isolation, and location transparency.

Receivers of non-blocking communication can only use resources when they are actively engaged, which reduces system overhead. When explicit message-passing is employed, the system's message queues are shaped, monitored, and, when necessary, backpressure is applied to assist with load management, elasticity, and flow control.

Basically, a Stream of data is sequential information or a record that is transferred from one system to another. They are usually processed using the FIFO (First-In-First-Out) pattern. However, the traditional blocking methodology of data streaming often prohibits a system from processing real-time data while streaming records. Thus, a group of prominent developers gradually realized that they would need an approach to build a “reactive” systems architecture that would facilitate the processing of data while streaming. Consequently, they signed a manifesto, popularly known as the Reactive Manifesto.

Start course to continue
Lessson 13/14
You must first start the course before tracking progress.
Mark completed

© 2013-2024 Stack Abuse. All rights reserved.