|
|
|
Back to newsletter 193 contents
One of the sessions I convened at JCrete was entitled "Tools & Techniques to diagnose concurrency issues". I was hoping that someone would tell me of a tool that can effectively diagnose concurrency issues in production beyond what everyone I know currently does: take a few stack traces and see what the threads are waiting on.
I collected a nice set of suggestions for looking at things during development and some consistently useful measures to monitor, but there was little for diagnosing in production beyond those widespread multiple stack trace analyses and data from the ThreadMXBean (and not listed but also useful, the jstack -l option for information on java.util.concurrent.locks). What I find strange is the seeming lack of effort here by tool vendors - pretty much every other type of performance issue has multiple tools targeted at it, but not this one. Many thread profilers do show graphically which threads are running and which stalled, but that's such a basic analysis it provides little extra. For me, identifying the causes of concurrency issues is the single most difficult task left to provide tools for. If anyone has suggestions to add to those concurrency diagnosis tools, I'll happily report back to you all in a future newsletter.
Now on to our links to tools, articles, news, talks, blogs. And if you need the tips from this month's articles and talks, as ever they are extracted into this month's tips page.
Java performance tuning related news.
Java performance tuning related tools.
Back to newsletter 193 contents