Spring RestTemplate to WebClient causes OutOfMemoryError

Spring Boot's migration from RestTemplate to WebClient enhances performance via concurrency and non-blocking I/O. However, it led to OutOfMemoryError due to insufficient direct buffer memory. By analyzing the application with yCrash and increasing the maximum direct memory size, the issue was resolved, allowing successful image uploads without crashes.

Java NIO – OutOfMemoryError

Java NIO allows high-performance non-blocking I/O, enhancing concurrency and efficiency. However, running a Spring Boot application with Java 11 led to frequent 'OutOfMemoryError' issues. Upgrading to Java 17 and increasing Direct Buffer Memory allocation improved performance, allowing for significantly more connections before errors occurred. Solutions include optimizing memory size or upgrading Java versions.

Actions on OutOfMemoryErrors

OutOfMemoryErrors in applications occur when memory allocation fails. This article discusses effective practices for analyzing such errors, including automatic heap dumps and using JVM parameters. It highlights script usage for automatic actions upon encountering errors and emphasizes the importance of proactive monitoring and automated incident reporting to reduce application downtime.

Virtual Threads – A Definite Advantage

Virtual Threads in Java, introduced in version 21, significantly enhance multi-threaded applications by reducing thread management overhead. This article explores their advantages over traditional platform threads through experimentation involving one million threads. Virtual Threads operate efficiently within heap memory, preventing OutOfMemoryError, and allow easier application scalability and performance improvements.

Problems With Finalizer

In Java, the finalize method has been part of the language since its early days, offering a mechanism to perform cleanup activities before an object is garbage collected. However, using finalizers has come under scrutiny due to several performance-related concerns.…

Garbage Collection - unsung Hero

Garbage Collection – Unsung Hero

Garbage Collection is a facet often disregarded and underestimated, yet beneath its surface lies the potential for profound impacts on your organization that reach far beyond the realm of application performance. In this post, we embark on a journey to…