Java developers tend to use 'java.util.UUID#randomUUID()' API, to generate a UUID (Universally Unique Identifier) number (i.e., 'b8bbcbed-ca07-490c-8711-5118ee0af2f9'). Under certain circumstances, using this API can affect your application’s availability. Let’s discuss this API in this post with a real-world example. How does 'java.util.UUID#randomUUID()' API works? java.util.UUID#randomUUID() API internally uses 'entropy' in the operating system to generate... Continue Reading →
Overhead added by collecting thread dumps
A thread dump is a snapshot of all the threads running in a java process. It’s a vital artifact to troubleshoot various production problems such as CPU spikes, unresponsiveness in the application, poor response time, hung threads, high memory consumption. Thus to facilitate troubleshooting, we have seen enterprises capture thread dumps on a periodic basis... Continue Reading →
Java threads – may not be memory efficient?
Java applications tend to contain hundreds (sometimes thousands) of threads. The majority of these threads are in WAITING, TIMED_WAITING (i.e., dormant) state, while only a small portion of the threads are actively executing lines of code. So, we were curious to know whether dormant threads consume less memory than active threads. To figure out an... Continue Reading →
Chaos Engineering – Simulating CPU spike
In this series of chaos engineering articles, let's discuss how to simulate CPU consumption to spike up to 100% on a host (or container). CPU consumption will spike up whenever a thread goes on an infinite loop. Here is a sample program from the open-source BuggyApp application, which would cause the CPU to spike up.... Continue Reading →
yCrash Demo video
yCrash app is a non-intrusive, secure, instant root cause analysis tool. It captures thread dump, heap dump, GC log, netstat, vmstat, top, and several more artifacts, right when the problem is happening in the production. It instantly analyzes all the artifacts & generates a root cause analysis report in the dashboard. Watch this below video... Continue Reading →