I've used HP Jmeter to track down a leak in James before. Its not bad and can give some very useful insight into your code. I found the Sun one not so nice interface wise and not as rich in the analysis of the information as the HP.
-- Jason > -----Original Message----- > From: Steve Brewin [mailto:[EMAIL PROTECTED] > Sent: 27 August 2003 12:53 > To: 'James Developers List'; [EMAIL PROTECTED] > Subject: RE: High CPU Load Followup > > > Kenny, > > Assuming you don't want to splash out on a commercial > performance analysis tool, you could also try this... > > http://www.hp.com/products1/unix/java/hpjmeter/infolibrary/jmeter/ > > or this... > > http://developer.java.sun.com/developer/technicalArticles/GUI/ > perfanal/ > > Both are free. I haven't tried either myself, but they should > shed some light on where the CPU time is being spent within > the JVM without extensive analysis of thread dumps. > > If you do try one, it would be interesting to know if you > found them useful. > > -- Steve > > > -----Original Message----- > > From: Steve Brewin [mailto:[EMAIL PROTECTED] > > Sent: 27 August 2003 10:29 > > To: 'James Developers List' > > Subject: RE: High CPU Load Followup > > > > > > Kenny, > > > > As described in > > http://developer.java.sun.com/developer/technicalArticles/Prog > > ramming/Stackt > > race/... > > > > "For busy programs: The best course of action you can take for busy > > programs is to generate frequent stack traces. This will narrow down > > the code path > > that is causing the errors, and you can then start your > > investigation from > > there." > > > > For "frequent", read 10 at 10 second intervals as a starting point. > > You could write a script that generates these "frequent" thread > > dumps for you. > > With "frequent" thread dumps you should be able to determine > > if James is > > always looking up MX records, as shown in the stacktrace you > > attached, or > > typically doing something else. > > > > Just to confirm, when you say "James is running above 90% > CPU", what > > do you mean? Is the process that JVM on which James is running using > > 90% CPU or is > > the total CPU usage at 90%? If the latter, what other processes are > > increasing their CPU consumption? > > > > -- Steve > > > > > -----Original Message----- > > > From: Kenny Smith [mailto:[EMAIL PROTECTED] > > > Sent: 27 August 2003 00:33 > > > To: James Developers List > > > Subject: High CPU Load Followup > > > > > > > > > Hi all, > > > > > > Thanks to a pointer from Steve Brewin I was able to get > some thread > > > dumps while James is running above 90% CPU. I took 4 > thread dumps: 3 > > > within a minute and 1 an hour later. It looks like there are 4 > > > threads that are runnable. 3 that are waiting for socket > connections > > > (I assume > > > that's SMTP, POP, and the Admin Manager), the last 1 is > > doing DNS for > > > remote delivery. Here's the stack: > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]