The Spring Boot Buggy API offers a valuable platform to simulate various performance issues in your applications. By intentionally creating problems like DB connection leaks, memory leaks, CPU spikes, and more, you can assess your system's resilience and evaluate the effectiveness of performance tools. Fig 1: SpringBoot Buggy API - Performance Issue Simulator Buggy Api... Continue Reading →
Java SpringBoot – Performance Analysis and Tuning
SpringBoot is a widely used framework for building Java-based web applications and maintains a significant presence in the world of enterprise software development. It powers large-scale microservices and standalone applications. Most SpringBoot applications have embedded web servers and follow a distributed architecture consisting of three main types of application components: Backend: API services Backend: Event... Continue Reading →
Simulating & troubleshooting BLOCKED threads in Scala
In this series of simulating and troubleshooting performance problems in Scala, let’s discuss how to make threads go into BLOCKED state. A thread will enter into a BLOCKED state when it couldn’t acquire a lock on an object because another thread already holds the lock on the same object and doesn’t release it. Video: To... Continue Reading →
Chaos Engineering – Blocked Threads
In the series of chaos engineering articles, we have been learning to simulate various performance problems. In this post, let's discuss how to make threads go into BLOCKED state. Sample Program Here is a sample program from open source BuggyApp application, which would make threads go into BLOCKED state. A thread will enter into a... Continue Reading →
Chaos Engineering – Deadlock
In the series of chaos engineering articles, we have been learning to simulate various performance problems. In this post, let's discuss how to simulate deadlock. What is Deadlock? Deadlock is prone in multi-threaded applications. The technical definition of a 'Deadlock' goes like this: Deadlock is a situation where a set of processes are blocked because... Continue Reading →