Troubleshooting Spring Boot DB Connection Leaks

This article talks about a common problem with Spring Boot applications: database connection leaks. These leaks happen when connections aren't closed properly, which can slow down the system or even cause it to crash. The article sheds some light on how one can find and fix these leaks by looking at errors and network metrics and also suggests solutions like try-with-resources and connection pools to stop leaks from happening in the first place.

Read MoreTroubleshooting Spring Boot DB Connection Leaks

Troubleshooting Spring Boot StackOverflowError

This post discusses diagnosing and troubleshooting StackOverflowError in Spring Boot applications, which occurs when thread stack size exceeds memory limits due to infinite recursion or excessive stack calls. It demonstrates simulating this error using BuggyAPI and employs the yCrash tool for analysis, providing resolutions such as proper termination in recursive methods and increasing stack memory.

Read MoreTroubleshooting Spring Boot StackOverflowError

Troubleshooting Spring Boot Thread Leaks

Spring Boot is a framework for creating Java web applications, but it can experience thread leaks, leading to performance issues. A thread leak occurs when threads retain references after execution, causing resource exhaustion. Proper thread management, including termination, use of thread pools, and handling exceptions, is crucial for preventing leaks and ensuring system stability.

Read MoreTroubleshooting Spring Boot Thread Leaks

Optimizing Robotics application’s Performance!

This post shares an experience in optimizing a Java application controlling warehouse robots, addressing performance issues due to long Garbage Collection (GC) pauses. By analyzing GC logs, the team identified excessive heap size and the CMS algorithm as causes. Switching to the G1 GC algorithm successfully reduced pause times, improving overall application performance.

Read MoreOptimizing Robotics application’s Performance!

Troubleshooting CPU Spike on ServiceNow MID Server

This blog post addresses troubleshooting JVM CPU spike errors on ServiceNow servers, focusing on simulating such spikes using a Java program on the MID Server. It outlines causes of CPU spikes and guides on setting up the MID Server. yCrash is introduced as a monitoring tool that effectively diagnoses CPU spike issues and aids in resolution strategies.

Read MoreTroubleshooting CPU Spike on ServiceNow MID Server

Configuration Mid Server On ServiceNow Infrastructure

This blog provides a step-by-step guide to integrate and run custom Java applications in the ServiceNow MID Server infrastructure. It covers creating a ServiceNow application, setting up an Amazon EC2 instance, installing MID Server, adding a JAR file, and running the Java application. The guide emphasizes seamless communication and data exchange between ServiceNow and external entities.

Read MoreConfiguration Mid Server On ServiceNow Infrastructure

‘top’ reporting accurate metrics within containers?

The command-line tool "top" provides real-time resource utilization reports, but may inaccurately reflect CPU usage within Docker containers. An experiment showed "top" reported 25% CPU utilization instead of 100%. To obtain accurate metrics in containers, alternative tools like Docker stats, cAdvisor, and yCrash should be utilized for improved monitoring.

Read More‘top’ reporting accurate metrics within containers?

Virtual Threads Performance in Spring Boot

This post examines configuring Virtual Threads in a Spring Boot application that calculates the Fibonacci sum for values starting from 10,000. Using JMeter, a load test with 1000 users reveals similar throughput and average response times for both virtual and native threads, highlighting virtual threads' advantage in lower thread usage without performance gain for CPU-intensive operations.

Read MoreVirtual Threads Performance in Spring Boot

How to configure Virtual Threads in Spring Boot application

Spring Boot is a popular Java framework that allows developers to minimize boilerplate code and easily configure applications. By leveraging Virtual Threads, developers can enhance thread management without extensive rewrites. Configuration involves setting properties in application files and using the @ConditionalOnProperty annotation to toggle between Virtual and Native Threads seamlessly.

Read MoreHow to configure Virtual Threads in Spring Boot application