The Value Of Reactive Systems

  Рет қаралды 11,061

SpringDeveloper

SpringDeveloper

Күн бұрын

Пікірлер: 9
@emilbelardo639
@emilbelardo639 2 жыл бұрын
Thank you for sharing this very informative presentation🙂 01:25 - Reactive programming in a nutshell 01:26 -- What is reactive programming? 03:34 -- Reactive programming concepts worth knowing 04:08 -- Functional programming 04:49 -- Asynchronous programming (work stealing) can make debugging difficult 05:33 -- What is non-blocking programming? 06:34 -- Multiple terminal routes: Blocking ( full data or no data ) vs. Non-Blocking ( full data, no data, or partial data ) 08:09 -- Overhead on low volume 09:55 - Reality Check Part 1: What are the priorities ( business and otherwise )? 12:47 - Performance Overview 12:48 -- Synchronous Processing: Blocking - Remote Call 14:14 -- Synchronous Processing: Blocking - Slow Client 14:59 -- Asynchronous Processing: Blocking - Remote Call 16:03 -- Asynchronous Processing: Blocking - Slow Client 16:27 -- Non-Blocking and Event Loops 18:22 - Reactive Programming Model 18:24 -- What is backpressure and why is it important? 19:29 - WebMVC ( blocking processing ) vs. WebFlux ( non-blocking processing ) 19:55 - Use cases that favor using the reactive programming model and WebFlux 21:42 - Performance 22:36 -- Load Scenario / Description of Test Environment 23:34 -- Scenario 1 - Hello World ( return single string ) 23:46 --- Comparison: WebFlux vs. WebMVC 26:02 --- Why is it important to minimize use of old generation heap memory? 28:02 --- Why does WebFlux tend to use less old generation heap memory compared to Web MVC? 30:36 --- Can non-reactive programming and reactive programming coexist on the same server? 31:59 -- Scenario 2 - Hello World with Delay ( slow client simulation ) 33:06 --- Comparison: WebMVC 200 vs. WebMVC 200 ( with response delay ) 34:28 --- The importance of using tail latency instead of average latency as a benchmark 34:41 --- Comparison: WebMVC 200 ( with response delay ) vs. WebMVC 600 ( with response delay ) 35:04 --- Comparison: WebFlux vs. WebFlux ( with response delay ) 35:37 -- Scenario 3 - Streaming ( 50 elements ) 36:21 --- Comparison: WebFlux vs. WebMVC 36:52 -- Scenario 4 - Streaming with Delay ( slow client simulation ) 37:22 --- Comparison: WebFlux vs. WebMVC 37:49 -- Scenario 5 - Remote Call 38:51 --- Comparison: WebFlux vs. WebMVC with RestTemplate 39:37 --- Comparison: WebFlux vs. WebMVC with WebClient 40:43 --- The benefit of replacing RestTemplate with WebClient in a WebMVC application 41:38 -- Scenario 6 - Remote Call with Delay ( slow remote service simulation ) 42:12 --- Comparison: WebFlux vs. WebMVC with RestTemplate 42:34 --- Comparison: WebFlux vs. WebMVC with WebClient 44:02 --- Does it still make sense to replace RestTemplate with WebClient in a WebMVC application if it only interacts with one remote service? 45:38 - Reactive Programming Benefit: Built-in Resilience 46:10 -- Prepare for the worst, don't page Ops 46:59 - Tales of Production... 47:21 -- How Netty tries to isolate possible errors like OutOfMemoryError to the offending request 50:26 - Reality Check Part 2: Let's review the priorities again ( business or otherwise ) 50:37 -- Reactive allows more productivity in writing state of the art, scalable microservices 51:21 -- Reactive applications are designed to be resilient under stress and lower maintenance 51:52 -- Reactive allows you to run more for less 53:21 - Question & Answer
@ramcorp542
@ramcorp542 2 жыл бұрын
Thank for the presentation.
@rajivkumar-ub6uj
@rajivkumar-ub6uj 3 жыл бұрын
You guys are good. Thanks for the awesome presentation
@emilbelardo639
@emilbelardo639 2 жыл бұрын
If Gatling was the load testing tool used to measure throughput, does anyone know what tool was used to measure resource usage of the application itself ? In the presentation, they showed both throughput metrics and resource usage metrics. As far as I know, Gatling only provides throughput metrics. So I'm very curious what tool was used for the resource usage metrics.
@Xposterion
@Xposterion 4 жыл бұрын
Thank you for presentation. Slideshare link not valid, could you please re-upload it?
@itsnaveen007
@itsnaveen007 4 жыл бұрын
very good information
@seonwookim5391
@seonwookim5391 3 жыл бұрын
thank you for the presentation. By the way, can I know what tools you have used to calculate the performance (comparison between WebMVC and Web Flux) ? Looks very useful
@Azotizca
@Azotizca 3 жыл бұрын
Its called gatling
@rewolfer
@rewolfer 4 жыл бұрын
So for scenario 3, the "Response Time" is for receiving the whole stream? So a p99 of ~5s is for streaming 50 items (of 1k each) => 50k/5s = 10k/s. Comparet with about 5.5k/s on MVC. I also really like the stddev numbers for the WebFlux results. Much more consistent than MVC.
Avoiding Reactor Meltdown
58:22
SpringDeveloper
Рет қаралды 23 М.
Do’s and Don’ts: Avoiding First-Time Reactive Programmer Mines
58:38
Who is More Stupid? #tiktok #sigmagirl #funny
0:27
CRAZY GREAPA
Рет қаралды 10 МЛН
GIANT Gummy Worm #shorts
0:42
Mr DegrEE
Рет қаралды 152 МЛН
Designing, Implementing, and Using Reactive APIs - Ben Hale, Paul Harris
1:10:30
Designing a Reactive System
1:07:58
SpringDeveloper
Рет қаралды 6 М.
Guide to "Reactive" for Spring MVC Developers
1:04:27
SpringDeveloper
Рет қаралды 62 М.
How to Avoid Common Mistakes When Using Reactor Netty
53:57
SpringDeveloper
Рет қаралды 28 М.
Flight of the Flux: A Look at Reactor Execution Model
41:09
SpringDeveloper
Рет қаралды 27 М.
Reactor in Action - Simon Baslé, Victor Grazi
1:09:45
SpringDeveloper
Рет қаралды 31 М.
S3E42 - Siva Prasad Reddy K and IntelliJ Tips
1:01:02
SpringDeveloper
Рет қаралды 1,6 М.
Reactive Architectures with RSocket and Spring Cloud Gateway
1:10:32
SpringDeveloper
Рет қаралды 10 М.
Who is More Stupid? #tiktok #sigmagirl #funny
0:27
CRAZY GREAPA
Рет қаралды 10 МЛН