There are 8 flavors of java.lang.OutOfMemoryError. In these 8 flavors java.lang.OutOfMemoryError: unable to create new native thread is one of the commonly occurring flavor. This type of 'OutOfMemoryError' is generated when an application isn’t able to create new threads. This error can surface... Continue Reading →
Thread dumps are vital artifacts to diagnose CPU spikes, deadlocks, poor response times, memory problems, unresponsive applications, and other system problems. There are great online thread dump analysis tools such as http://fastthread.io/, which can analyse and spot problems. But to... Continue Reading →
In this series, we will see the interview questions that can be asked related to external connectivity. How will you find the number of connections established with your Databases or SOR or any external services)? There is a Unix/Windows command... Continue Reading →
Description Dining Philosophers is a classic computer science problem that happens in concurrent programming. Dining philosophers problem will result in circular deadlock problem. Circular deadlock is a variant of deadlock problem. Once deadlock happens, the only way to recover from... Continue Reading →
Title of this article might sound like an oxymoron. How can persistent HTTP connections be gracefully and at the same time quickly evicted? By Gracefully I mean here the client applications to close the connections by themselves without jeopardizing the... Continue Reading →
I was surprised to witness the Java Executor behavior – which caused “java.lang.OutOfMemoryError: unable to create new native thread” in our application. I would like to share my surprise (i.e. problem) and resolution to it.
Configuring database connection pool is absolutely critical to the performance of the application. Configuring database connection pool is a double-edged sword; too strict configuration would degrade the application’s response time, whereas too lenient configuration would consume a lot of resources... Continue Reading →