How to Avoid Common Mistakes When Using Reactor Netty
summary
Reactor Netty is the default runtime in Spring Boot 2 and causes specific failures: ByteBufs use direct memory and the last accessor must release buffers, otherwise leaks happen; WebClient.exchange() leaves responsibility to the app and often causes leaked buffers and unusable pooled connections, so use retrieve()+toEntity()/toBodilessEntity() or retrieve().onStatus() to drain and release bodies. Enable leak detection (advanced/paranoid) and reactor-netty wiretap logging, watch read/connect/response/maxIdle/maxLifetime timeouts, and prefer connection-pool LIFO or shorter maxIdleTime when backends close idle connections.
AI-written summary · about
chapters (6)
- 0:00Introduction to Reactor Netty
- 1:07Why logging matters
- 15:56Memory leaks in Reactor Netty
- 30:25Timeouts and connection issues
- 45:51Connection pool pitfalls
- 50:38Final advice and Q&A
related talks
36mReactor Netty, the default runtime for Spring Boot 2.0
29mBuilding Reactive Systems with Reactor
47mReactive Spring
51mReactor 3, the reactive foundation for Java 8 (and Spring 5)
45mReactive web services
01h 32mBuilding Reactive applications with Reactor and the Reactive Streams standard
58mReactive Spring
49mReactive Spring
