Reactive Programming for 20,000+ RPS Parallel Processing, Explained by a Naver Interviewer
This course is for developers who want to find fundamental solutions in environments where response times slow as traffic increases, thread pools are quickly exhausted, and bottlenecks become more severe as the number of external API calls grows. Rather than simply scaling up servers, it helps you look at these problems from the perspective of changing the underlying architecture itself. Through this course, you will first understand the limitations of the traditional Spring MVC thread-per-request model. You will examine at the code level why throughput fails to increase even when CPU resources remain available, and how blocking I/O actually occupies system resources. Next, you will learn the concepts and standard specifications of Reactive Streams, as well as how to handle data streams using Reactor’s Mono and Flux. Rather than focusing solely on basic usage, you will gain hands-on experience with how data flows begin and are consumed, and how throughput is controlled. In particular, you will implement designs that use back pressure to prevent OOM conditions and overload. You will also learn how Spring WebFlux’s event-loop-based processing structure works and conduct comparative exercises to see how non-blocking I/O operates during actual request processing. By examining MVC and WebFlux side by side, you will identify their structural differences and establish criteria for deciding when to choose Reactive. This course goes beyond simply “learning asynchronous programming.” You will learn how to handle more requests with fewer threads, maintain stable flows in environments with heavy reliance on external APIs, and develop the design instincts needed to achieve high throughput in highly concurrent environments.
176 learners
Level Beginner
Course period Unlimited

