<< Portlet Specification : What Is Real and What Comes Next? | Home | Announcing Pebble 5.0 >>
Twitter RSS feed for Simon Brown [Twitter] simonbrown: Eating cream cakes in the sun at jersey zoo ... chillin'

Coding the Architecture RSS feed for Simon Brown [Coding the Architecture] Just a short note to plug a handful of sessions that Kevin and I are presenting at the upcoming Software Architect 2008 conference, 3rd-5th June, London. 1. Coding the Architecture : From Developer to Architect The first is a re-run of our ...

Finding Performance Bottlenecks in Your J2EE Application

The other session I went to this morning was about performance bottlenecks in J2EE apps. This was a fascinating look into some of the problems that the Sun team have encountered and how you go about diagnosing them. I think as Java developers we're sometimes too shielded from the underlying operating system and it was great to see that OS level tools (like top, iostat, mpstat, etc on UNIX) can be useful in diagnosing what's going wrong. For example, a high degree of system CPU usage may indicate that your app is calling out to the OS too much, perhaps for writing to disk.

They also talked about the benefit of using thread dumps to figure out threading and synchronization problems. On Windows, I think you get a thread dump by doing Ctrl-Break. How do you do this on a Mac?



Re: Generating thread dump on OSX

Easy peasy, find the process number and issue a kill -3 to that process. This dumps the information to the Standard Error stream.

Add a comment Send a TrackBack