我有两个版本的Java应用程序,它们使用不同的并发逻辑。
我想分析和比较它们的性能(获得锁的时间,等等)。这样我就能用更好的了。
我找到了一个工具IBM for Java,但它既不是开源的,也不是JDK版本独立的。
它需要一个由IBM提供的Java或™。
IBM的另一个工具是多核软件开发工具包,它有以下问题
MSDK的测试和分析工具运行在Sun上,除了锁分析工具。性能工具需要一个IBM。
那么,有人能推荐使用Sun/Oracle Java的任何这样的锁分析工具吗?
发布于 2011-03-22 11:30:27
下面是我多次使用命令行在生产环境中查找锁争用的技巧:
watch -n1 'jstack [pid] | grep -A 1 BLOCKED | grep -v BLOCKED | grep -v \\-\\-'它不仅是免费的,而且几乎没有开销。当然,它不会给您提供统计数据或良好的UI,但是它会使实时锁定问题以直观的方式变得明显。从本质上说,这是每秒钟采样一次,以找到阻塞的线程。有了足够的服务器负载,您应该能够进行比较。
YourKit是一个很好的商业选择。
https://stackoverflow.com/questions/5390317
复制相似问题