Java Code Geeks » Nikita Salnikov Tarnovski http://www.javacodegeeks.com/ Java 2 Java Developers Resource Center Wed, 27 May 2015 19:00:25 +0000 en-US hourly 1 http://wordpress.org/?v=4.2.2 What is Garbage Collection?http://www.javacodegeeks.com/2015/05/what-is-garbage-collection.html http://www.javacodegeeks.com/2015/05/what-is-garbage-collection.html#comments Mon, 25 May 2015 04:00:47 +0000 http://www.javacodegeeks.com/?p=40192 The following is an example from our Garbage Collection Handbook which will be published in the forthcoming weeks. In the meanwhile, take your time to get yourself familiar with the basics of the Garbage Collection – this is going to be the very first chapter of the book. At the first sight, garbage collection should be dealing with ...

 

]]>
http://www.javacodegeeks.com/2015/05/what-is-garbage-collection.html/feed/ 0
Logging stop-the-world pauses in JVMhttp://www.javacodegeeks.com/2015/04/logging-stop-the-world-pauses-in-jvm.html http://www.javacodegeeks.com/2015/04/logging-stop-the-world-pauses-in-jvm.html#comments Wed, 29 Apr 2015 19:00:53 +0000 http://www.javacodegeeks.com/?p=39622 Different events can cause the JVM to pause all the application threads. Such pauses are called Stop-The-World (STW) pauses. The most common cause for an STW pause to be triggered is garbage collection (example in github) , but different JIT actions (example), biased lock revocation (example), certain JVMTI operations , and many more also require ...

 

]]>
http://www.javacodegeeks.com/2015/04/logging-stop-the-world-pauses-in-jvm.html/feed/ 0
Turning on GC logging at runtimehttp://www.javacodegeeks.com/2015/03/turning-on-gc-logging-at-runtime.html http://www.javacodegeeks.com/2015/03/turning-on-gc-logging-at-runtime.html#comments Mon, 16 Mar 2015 05:00:24 +0000 http://www.javacodegeeks.com/?p=38045 There is always the next JVM behaving badly. And you know by heart that if you just could have had those few startup options exposing some more information about what is going on, you might have stood a chance of actually fixing the goddamn thing. But nope, exactly the flag you need (be it -XX:+HeapDumpOnOutOfMemoryError ...

 

]]>
http://www.javacodegeeks.com/2015/03/turning-on-gc-logging-at-runtime.html/feed/ 0
What is wrong with troubleshooting tools?http://www.javacodegeeks.com/2015/03/what-is-wrong-with-troubleshooting-tools.html http://www.javacodegeeks.com/2015/03/what-is-wrong-with-troubleshooting-tools.html#comments Tue, 10 Mar 2015 08:00:57 +0000 http://www.javacodegeeks.com/?p=37855 “Troubleshooting is a form of problem solving applied to repair failed software. It is a logical, systematic search for the source of a problem so that it can be solved, and so the software can be made operational again.” This definition from Wikipedia is using fancy words to tell you that – whenever your application ...

 

]]>
http://www.javacodegeeks.com/2015/03/what-is-wrong-with-troubleshooting-tools.html/feed/ 0
Minor GC vs Major GC vs Full GChttp://www.javacodegeeks.com/2015/03/minor-gc-vs-major-gc-vs-full-gc.html http://www.javacodegeeks.com/2015/03/minor-gc-vs-major-gc-vs-full-gc.html#comments Mon, 02 Mar 2015 17:00:43 +0000 http://www.javacodegeeks.com/?p=37601 While working with the GC pause detection functionality in Plumbr I was forced to work my way through loads of articles, books and presentations about the subject. Throughout the journey, I was repeatedly confused about the (mis)use of the Minor, Major and Full GC events. This led to this blog post where I hope I ...

 

]]>
http://www.javacodegeeks.com/2015/03/minor-gc-vs-major-gc-vs-full-gc.html/feed/ 1
Why is my JVM having access to less memory than specified via -Xmx?http://www.javacodegeeks.com/2015/02/jvm-access-less-memory-specified-via-xmx.html http://www.javacodegeeks.com/2015/02/jvm-access-less-memory-specified-via-xmx.html#comments Sat, 21 Feb 2015 13:00:06 +0000 http://www.javacodegeeks.com/?p=37123 “Hey, can you drop by and take a look at something weird”. This is how I started to look into a support case leading me towards this blog post. The particular problem at hand was related to different tools reporting different numbers about the available memory. In short, one of the engineers was investigating the ...

 

]]>
http://www.javacodegeeks.com/2015/02/jvm-access-less-memory-specified-via-xmx.html/feed/ 0
How JVMTI tagging can affect GC pauseshttp://www.javacodegeeks.com/2015/02/jvmti-tagging-can-affect-gc-pauses.html http://www.javacodegeeks.com/2015/02/jvmti-tagging-can-affect-gc-pauses.html#comments Mon, 09 Feb 2015 14:00:50 +0000 http://www.javacodegeeks.com/?p=36721 This post is analyzing why and how Plumbr Agents extended the length of GC pauses on certain occasions. Troubleshooting the underlying problem revealed interesting insights about how JVMTI tagging is handled during GC pauses. Spotting a problem One of our customers complained about the application being significantly less responsive with the Plumbr Agent attached. Upon analyzing the ...

 

]]>
http://www.javacodegeeks.com/2015/02/jvmti-tagging-can-affect-gc-pauses.html/feed/ 0
How to define performance requirements?http://www.javacodegeeks.com/2015/01/how-to-define-performance-requirements.html http://www.javacodegeeks.com/2015/01/how-to-define-performance-requirements.html#comments Fri, 30 Jan 2015 17:00:51 +0000 http://www.javacodegeeks.com/?p=36372 “The app is slow, can you make sure it is fast.” The quote above should send shivers down the spine for any experienced engineer. In our previous posts we have constantly stressed out the part of “measuring not guessing” when dealing with performance tuning. Even more important though is to have defined the meaning of “fast”. Unless you ...

 

]]>
http://www.javacodegeeks.com/2015/01/how-to-define-performance-requirements.html/feed/ 0
Self-healing JVMhttp://www.javacodegeeks.com/2014/12/self-healing-jvm.html http://www.javacodegeeks.com/2014/12/self-healing-jvm.html#comments Fri, 12 Dec 2014 17:00:19 +0000 http://www.javacodegeeks.com/?p=34426 This post is an example about an application where the first solution to each and every IT problem – “have you tried turning it off and on again” – can backfire and do more harm than good. Instead of turning things off and on, we have an application that can literally heal itself: it fails ...

 

]]>
http://www.javacodegeeks.com/2014/12/self-healing-jvm.html/feed/ 0
Java performance tuning survey results (part IV)http://www.javacodegeeks.com/2014/12/java-performance-tuning-survey-results-part-iv.html http://www.javacodegeeks.com/2014/12/java-performance-tuning-survey-results-part-iv.html#comments Fri, 05 Dec 2014 20:00:59 +0000 http://www.javacodegeeks.com/?p=34019 This is the last post in series where we analyze the results of the Java Performance Tuning Survey we conducted in October 2014. If you have not read the first posts, I recommend to go through the following first:                 Frequency and severity of performance problems Most popular ...

 

]]>
http://www.javacodegeeks.com/2014/12/java-performance-tuning-survey-results-part-iv.html/feed/ 0