WEB开发网
开发学院软件开发Java 使用Java构建高伸缩性组件 阅读

使用Java构建高伸缩性组件

 2009-12-21 00:00:00 来源:WEB开发网   
核心提示: THOR ——该工具用于详细分析Java应用的性能,它能够深入分析完整的执行栈,使用Java构建高伸缩性组件(3),从硬件到应用层,信息来自于栈的四个层面——硬件、操作系统、JVM和应用,我们需要检查共享数据是如何被多线程访问的,通过使用JLM或者

THOR ——该工具用于详细分析Java应用的性能。它能够深入分析完整的执行栈,从硬件到应用层。信息来自于栈的四个层面——硬件、操作系统、JVM和应用。用户可以看到锁竞争的信息以及对应的代码、瓶颈、多核之间的线程迁移和竞争导致的性能下降。该工具支持x86和Power平台。

AIX性能工具——IBM的AIX操作系统自带一套底层的性能分析和调试工具。其中包括:

Simple Performance Lock Analysis Tool (SPLAT) ——该工具是AIX系统上的一个锁分析工具,可以通过命令行运行,用于分析各种内核级的锁。同时,它也可以分析和显示用户级锁(读/写和mutex)的竞争。应用必须启用跟踪选项,SPLAT需要用到这些跟踪数据。

XProfiler——该分析工具基于X—Windows,用于C语言应用的函数级分析,能够显示在用户代码中计算敏感的函数。如果要使用XProfiler,代码需要使用特殊的标志(-pg选项)编译。

prof、 tprof和gprofncbr——各种prof命令都可以用于分析用户应用。prof命令能够得到所有应用中的外部符号和函数。gprof是 prof的超集,可以获得应用的调用关系图。最后,tprof用于得到应用的宏观和微观的分析信息。tprof能够得到各个指令、子程序、线程、进程的计时数据,还有用户模式函数、库函数、Java类、Java方法、内核函数、内核扩展等的处理器使用情况。

减少热点

传统的性能调优方法,比如适用于顺序应用的方法也适用于并行应用。在完成传统调优之后,我们需要检查共享数据是如何被多线程访问的。通过使用JLM或者JLA,我们能够发现线程在访问共享资源时是如何竞争的。

上一页  1 2 3 4 5 6  下一页

Tags:使用 Java 构建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接