Java性能优化全攻略

  超时管理

  Java application与外部系统之间缺乏合理的超时时间,由于中间件和JVM线程消耗(blocking IO calls),可能导致严重的性能下降和中断。合理的超时时间可以避免在遇到外部服务提供商速度缓慢的时候,Java线程等待太久。

物联网

  工具

 

目标建议工具自动、实时地性能监控、调节、预警、趋势分析、容量管理,等等Enterprise APM solutions(企业级APM解决方案) 注意:APM解决方案提供了工具,这些现成的功能让您实现以下大部分的Java性能目标。性能和负载测试商业性能测试解决方案 Apache  JMeter

http://jmeter.apache.org/

JVM垃圾回收评估,内存分配率和故障排除Oracle Java VisualVM http://docs.oracle.com/javase/8/docs/technotes/guides/visualvm/intro.html

http://java.dzone.com/articles/profile-your-applications-java

Oracle Java Mission Control

http://www.oracle.com/technetwork/java/javaseproducts/mission-control/java-mission-control-wp-2008279.pdf

http://www.oracle.com/technetwork/java/javase/jmc53-release-notes-2157171.html

IBM Monitoring and Diagnostic Tools for Java(via IBM Support Assistant tool)

http://www-01.ibm.com/software/support/isa/

JVM verbose:gc logs

JVM argument : -verbose:gc

http://docs.oracle.com/javase/8/docs/technotes/tools/windows/java.html

IBM GCMV

https://www.ibm.com/developerworks/java/jdk/tools/gcmv/

JVM堆和类的元数据的内存泄漏分析Oracle Java VisualVM and Oracle Java Mission Control IBM Monitoring and Diagnostic Tools for Java

Memory Analyzer(heap dump analysis, hprof and phd formats)

https://www.eclipse.org/mat/

https://www.ibm.com/developerworks/java/jdk/tools/memoryanalyzer/

JVM内存分析和堆容量评估Oracle Java VisualVM and  Java Mission Control IBM  Monitoring and Diagnostic Tools for Java

Java profilers (JProfiler, YourKit)

http://en.wikipedia.org/wiki/JProfiler

http://www.yourkit.com/

Memory Analyzer(heap dump and application memory footprint analysis)

JVM和中间件并发故障,如thread lock contention和deadlocksOracle Java VisualVM and Oracle Java Mission Control (threads monitoring, thread dump snapshots) jstack , native OS signal such as  kill -3

(thread dump snapshots)

http://www.oracle.com/technetwork/java/javase/tooldescr-136044.html#gblfh

IBM Monitoring and Diagnostic Tools for Java