In this article I discuss the seven most important steps to improve your
application performance practices. These simple-to-follow practices will help
you to improve the way you deal with application performance. Besides
eventually improving the performance of your applications it will help you to
avoid playing the classical blame game which normally happens when something
goes wrong
Rule 1 – Understand the Application
While this may sound trivial and the most obvious thing to do – reality
paints a different picture. Most failing application performance management
processes originate from people’s lack of understanding of their
application. This does not mean that the people involved in the process do
not possess the knowledge to solve the problem. The case is rather that they
do not have enough data to understand what is really going on in the
application itself. ... (more)
This time I take an a bit of an unconventional approach towards defining
performance management. The idea for this article came through a number of
customer engagements, where the same question came up over and over again:
“How do we start with Application Performance Management and what should we
do?” Over time I developed a simple model which I called the performance
management pyramid.
The basic idea is to assign performance management activities to several
levels. Each level serves a specific need and builds on top of the lower
ones. Just like a building it starts with the b... (more)
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)
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)
Cloud Computing on Ulitzer
Amazon EC2 offers the CloudWatch service to monitor cloud instances as well
as load balancers. While this service comes at some cost
(0,015$/hour/instance) it offers useful infrastructure metrics about the
performance of your EC2 infrastructure. While there are commercial and free
tools out there which provide this service, you might not want to invest in
them or add another tool to your monitoring infrastructure.
This post will provide step-by-step guidance on how to extend your monitoring
solution to retrieve cloud metrics. The code sample is based on t... (more)