Two Laptop Bag*
The moose likes Performance and the fly likes basic question about profiler Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Performance
Bookmark "basic question about profiler" Watch "basic question about profiler" New topic
Author

basic question about profiler

ben oliver
Ranch Hand

Joined: Mar 28, 2006
Posts: 374
New to this topic, I have a basic question about profiler like jProbe, etc ---

Suppose I have a j2ee web application and want to use jProbe to check the bottleneck. Do I have to

1) get the j2ee application start running on my application server
2) get my jprobe installed and up running with the application server

The problem is it is hard to predict when the performance problem appears on the production system. How can I get a "snapshot" of what's the bottleneck while the system is down due to performance problem ? Do I have to have my jProbe ALWAYS up running while my production server is on ? That doesn't make much sense.
Jeanne Boyarsky
internet detective
Marshal

Joined: May 26, 2003
Posts: 30050
    
149

Ben,
Usually, you use a profiler when running a load test (in a non-production environment.) In production, you use a monitoring tool to tell you if the system reaches any critical thresholds. This is a lot less intrusive than a profiler.


[Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
Blogging on Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, OCAJP, OCPJP beta, TOGAF part 1 and part 2
ben oliver
Ranch Hand

Joined: Mar 28, 2006
Posts: 374
Originally posted by Jeanne Boyarsky:
Ben,
Usually, you use a profiler when running a load test (in a non-production environment.) In production, you use a monitoring tool to tell you if the system reaches any critical thresholds. This is a lot less intrusive than a profiler.


It is certainly true that our site goes down when it reaches certain number of users... Then, does it mean we *have to* combine jProbe with load test ? What if I don't have a load test software/tool ? Can jProbe still help ?

Another question is --- Do I have to "tell" jProbe which object to monitor ? Will jProbe automatically diagnose for me which object/method consumes too much memory ?
steve souza
Ranch Hand

Joined: Jun 26, 2002
Posts: 860
Also consider using JAMon. It is free and is fast enough to run in production systems. The jamon servlet filter requires no changes to your web app to get it running. Just add a few lines to you web.xml and make jamon.jar available.

http://www.jamonapi.com


http://www.jamonapi.com/ - a fast, free open source performance tuning api.
JavaRanch Performance FAQ
Appu Chan
Greenhorn

Joined: Aug 29, 2002
Posts: 28
Jprobe is not expected to be used in a production environment. It adds its own overhead to the application which could be upto 20%. You may probably use some non-intrusive monitoring tools on your prod env like Jamon, Sitescope or Topaz, if you dont have access to load testing environment to test with jprobe.

The application failure when load increases may be due to various factors including issues with the application and also lack of sufficient hardware resources like memory, processor, network etc

Regarding usage of jprobe, you can configure it to profile your entire application classes or any specific objects.
[ June 12, 2006: Message edited by: Howard Chan ]
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: basic question about profiler
 
Similar Threads
Issues running JProbe on Linux
How to monitor remotely with JProbe
Performance Tuning of Websites written in JSP/HTML
Good profiler (JProbe vs. JProfiler vs free ones)
do I have to have a java IDE for java profiler ?