Java Simon--性能瓶颈分析工具

简介:

有了AOP以及Java instrument之后,Java有很多很好的性能监控工具可以很有效的帮助我们分析系统瓶颈。例如使用jvisualvm的gui连接JVM应用之后可以监控应用的各种状态,可以看到每个函数的执行时间,不过很多时候我们没有jvisualvm的gui帮忙调试,这个时候我比较喜欢使用javasimon,可以通过AOP配置监控service layer方法调用时间,监控jdbc调用时间,还可以监控Web http request所需的时间,同时提供了web dashboard,完美无缺。下面说说怎么在spring相关项目中使用java Simon。

更多使用细节可以参考http://blog.csdn.NET/cloud_ll/article/details/43603241

 

 JavaSimon主要是用于performance测试的时候查看系统瓶颈,如果是想实现系统实时监控,推荐使用Yahoo Metrics

 

引用JavaSimon依赖:

 

[html]  view plain  copy
 
  1. <dependency>  
  2.     <groupId>org.javasimon</groupId>  
  3.     <artifactId>javasimon-spring</artifactId>  
  4.     <version>${project-javasimonVersion}</version>  
  5. </dependency>  
  6. <dependency>  
  7.     <groupId>org.javasimon</groupId>  
  8.     <artifactId>javasimon-console-embed</artifactId>  
  9.     <version>${project-javasimonVersion}</version>  
  10. </dependency>  
  11. <dependency>  
  12.     <groupId>org.javasimon</groupId>  
  13.     <artifactId>javasimon-jdbc4</artifactId>  
  14.     <version>${project-javasimonVersion}</version>  
  15. </dependency>  
  16. <dependency>  
  17.     <groupId>org.javasimon</groupId>  
  18.     <artifactId>javasimon-javaee</artifactId>  
  19.     <version>${project-javasimonVersion}</version>  
  20. </dependency>  


Data source监控:

 

 

[html]  view plain  copy
 
    1. <bean id="realHikariCPDataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="shutdown">  
    2.         <constructor-arg ref="hikariConfig" />  
    3.     </bean>  
    4.       
    5.     <bean id="hikariCPDataSource" class="org.javasimon.jdbcx4.WrappingSimonDataSource">  
    6.                 <property name="dataSource" ref="realHikariCPDataSource"/>  
    7.         </bean>  
本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/7172938.html,如需转载请自行联系原作者
相关文章
|
23天前
|
缓存 JavaScript Java
常见java OOM异常分析排查思路分析
Java虚拟机(JVM)遇到内存不足时会抛出OutOfMemoryError(OOM)异常。常见OOM情况包括:1) **Java堆空间不足**:大量对象未被及时回收或内存泄漏;2) **线程栈空间不足**:递归过深或大量线程创建;3) **方法区溢出**:类信息过多,如CGLib代理类生成过多;4) **本机内存不足**:JNI调用消耗大量内存;5) **GC造成的内存不足**:频繁GC但效果不佳。解决方法包括调整JVM参数(如-Xmx、-Xss)、优化代码及使用高效垃圾回收器。
95 15
常见java OOM异常分析排查思路分析
|
5天前
|
Java
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
17 5
|
4天前
|
Java 数据库
java小工具util系列1:日期和字符串转换工具
java小工具util系列1:日期和字符串转换工具
15 3
|
28天前
|
缓存 JavaScript Java
常见java OOM异常分析排查思路分析
Java虚拟机(JVM)遇到 OutOfMemoryError(OOM)表示内存资源不足。常见OOM情况包括:1) **Java堆空间不足**:内存被大量对象占用且未及时回收,或内存泄漏;解决方法包括调整JVM堆内存大小、优化代码及修复内存泄漏。2) **线程栈空间不足**:单线程栈帧过大或频繁创建线程;可通过优化代码或调整-Xss参数解决。3) **方法区溢出**:运行时生成大量类导致方法区满载;需调整元空间大小或优化类加载机制。4) **本机内存不足**:JNI调用或内存泄漏引起;需检查并优化本机代码。5) **GC造成的内存不足**:频繁GC但效果不佳;需优化JVM参数、代码及垃圾回收器
常见java OOM异常分析排查思路分析
|
5天前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
17 4
|
11天前
|
Java
JAVA并发编程系列(9)CyclicBarrier循环屏障原理分析
本文介绍了拼多多面试中的模拟拼团问题,通过使用 `CyclicBarrier` 实现了多人拼团成功后提交订单并支付的功能。与之前的 `CountDownLatch` 方法不同,`CyclicBarrier` 能够确保所有线程到达屏障点后继续执行,并且屏障可重复使用。文章详细解析了 `CyclicBarrier` 的核心原理及使用方法,并通过代码示例展示了其工作流程。最后,文章还提供了 `CyclicBarrier` 的源码分析,帮助读者深入理解其实现机制。
|
4天前
|
SQL 安全 Java
JAVA代码审计SAST工具使用与漏洞特征
JAVA代码审计SAST工具使用与漏洞特征
17 1
|
4天前
|
SQL Java 索引
java小工具util系列2:字符串工具
java小工具util系列2:字符串工具
8 2
|
6天前
|
JSON Java fastjson
java小工具util系列3:JSON和实体类转换工具
java小工具util系列3:JSON和实体类转换工具
11 2
|
1月前
|
Arthas Java 测试技术
Java字节码文件、组成,jclasslib插件、阿里arthas工具,Java注解
Java字节码文件、组成、详解、分析;常用工具,jclasslib插件、阿里arthas工具;如何定位线上问题;Java注解
Java字节码文件、组成,jclasslib插件、阿里arthas工具,Java注解
下一篇
无影云桌面