|
JProbe Profiler
The profiler is, in my opinion a cool tool, and the one you will probably be
using the most. Using the profiler, you can locate bottlenecks
in your applications, the obvious first step in any performance
analysis. JProbe will give you a visual layout of
your application (see Figure 1) and will highlight problematic method calls.
Additionally, you can zoom in on your application by applying a
flexible set of filters. After setup, the profiler itself
performs rather well. Once the initial report is generated, you
can select from nine different metrics to display.
This allows developers a more granular and controlled approach
to determine the exact heuristics by which they want to measure
their application.
Another nice feature in the Profiler is the automated triggers.
These triggers allow you to collect performance information
without having to be tied to the JProbe console.
Figure 1.
The JProbe Profiler shows a graph of method calls.
JProbe Memory Debugger
Many problems in applications are due to memory issues. These
can be a matter of garbage collection, memory leaks that crash
applications and just generally inefficient use of memory space.
The JProbe Memory Debugger allows developers to observe and
record how an application is using memory as it runs. This, as
with the Profiler, was surprisingly fast considering the
overhead that is surely involved. A graph records memory usage
(not unlike the Performance Monitor in Windows) at regular
intervals that are user selectectable. Additionally, the Memory
Leak Doctor will allow developers to take a more granular look
at what is going on inside the application and help to identify
the key causes.
Additionally, a line-by-line output can be viewed and saved It
is worthy to note that this is true of all the JProbe
applications.
Figure 2.
The JProbe Memory Debugger finds a leak.
JProbe Threadalyzer
Multi-threaded applications are the grail and the demise of many
developers; they allow applications to perform multiple tasks
simultaneously, but can also cause serious problems in
application stability. As a server-side developer, I find often
that threading issues can quickly compound and can greatly
effect the scalability of applications. Enter the threadalyzer
which shows threading performance of applications.
The Threadalyzer browser has three sections:
- The visualizer shows the different threads and their state
(locked, running, waiting, etc.)
- The message panel outputs logging information: warnings,
messages, etc.
- The results panel shows problems (if there are any) and
specifically what is causing them.
Using this basic information makes it fairly intuitive to find
threading issues in an application.
Figure 3.
The JProbe Threadalyzer gets deadlocked.
New on the Java Boutique:
New Review:
Time Management Made Easy with the Quartz Enterprise Job Scheduler
Why not just use the Java timer API? This open source scheduling
API boasts simplicity, ease-of-integration, a well-rounded feature
set, and it's free!
New Applet:
Reverse Complement
Reverse Complement is a simple applet that converts DNA or RNA
sequences into three useful formats.
Elsewhere on internet.com:
WebDeveloper Java
Lots of Java information on webdeveloper.com
WDVL Java
Thorough Java resource at the Web Developer's Virtual Library.
ScriptSearch Java
Hundreds of free Java code files to download.
jGuru: Your View of the Java Universe
Customizable portal with online training, FAQs, regular news updates, and tutorials.
|