Monitor. Resolve. Prevent.

Alois Reitbauer

Subscribe to Alois Reitbauer: eMailAlertsEmail Alerts
Get Alois Reitbauer via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Top Stories by Alois Reitbauer

Recently there was a bigger discussion at dynaTrace around the cost of exceptions. When working with customers we very often find a lot of exceptions they are not aware of. After removing these exceptions, the code runs significantly faster than before. This creates the assumption that using exceptions in your code comes with a significant performance overhead. The implication would be that you better avoid using exceptions. As exceptions are an important construct for handling error situation, avoiding exceptions completely does not seem to be good solution. All in all this was reason enough to have a closer look at the costs of throwing exceptions. The Experiment I based my experiment on a simple piece of code that randomly throws an exception. This is not a really scientifically-profound measurement and we also don’t know what the HotSpot compiler does with the co... (more)

A Step-by-Step Guide to dynaTrace AJAX Edition

  The dynaTrace AJAX Edition has been out there as an Alpha for a couple of weeks. It gave you the first impression what was to come. All the feedback we have received (like that from Steve Souders, and all that has come in via the contact form and the online forum) in that time made it possible to improve the tool from its early versions to its first "official" release version. In this article I'll discuss why dynaTrace Labs built the AJAX Edition, which problems it solves and how to use it in an example with Google maps. Why dynaTrace AJAX dition - and why for free? At dynaTrace... (more)

JPA Under the Hood

Java Developer Magazine on Ulitzer I recently spoke on the behavior of different JPA frameworks at W-JAX(Germany) and TheServerSide Java Symposium (Prague). As some people have asked me, I am publishing the samples as well. I would also give away the Eclipse project, however, with all the third-party libraries I am sure I will end up not doing it correctly. In addition, I can add some comments on the samples and why they are as they are . The goal of my experiment was to compare different JPA frameworks regarding their runtime characteristics. I addressed the following points: O... (more)

The Proactivity of Troubleshooting

Troubleshooting of performance problems is very often - if not almost always - viewed as a reactive activity. Frankly, I have often seen it done in such a reactive fashion as a firefight; however, effective troubleshooting should build upon a solid diagnostic process. If you handle troubleshooting as if firefighting rather than based on solid diagnosis, this inevitably is a sign you have failed to take the right proactive measures. The goal of troubleshooting is to resolve an immediate performance problem - ideally yesterday. As some might expect this does not start when the probl... (more)

Hunting Lost Treasures: Understanding and Finding Memory Leaks

Searching for memory leaks can easily become an adventure – fighting through a jungle of objects and references. When the leak occurs in production time is short and you have to act fast. Like in a treasure hunt, we have to interpret signs, unravel mysteries to finally find the “lost” memory. Memory leaks – together with inefficient object creation and incorrect garbage collector configuration – are the top memory problems. While they are a typical runtime problem, their analysis and resolution worries developers. Therefore I will focus in this post on how to analyze memory pr... (more)