javaee项目性能检测之JavaMelody

时间紧急,以下为粘贴,若要看原创请点击 跟我来

它并不是一个模拟请求类似JMeter的压力测试工具,而是一个衡量并且计算在应用上的操作信息的工具,也就是说,它只负责对行为进行监控,而不负责触发操作。JavaMelody基于请求统计生成模拟图表,并为我们的应用程序在QA或者开发上提供下面的帮助:

  1 给出平均的响应时间以及执行数

  2 在某些操作趋势变得严重前给出提示

  3 优化响应

  4 找出响应瓶颈的根本

  5 证实优化策略的效果

JDK版本要求:需要Java JDK在1.6或者1.6以上。

  支持在以下应用服务器的部署以及监控:

    servlet API在2.4以上

    Tomcat 5.5 6 或者7

    GlassFish v2或v3

    JBoss 4,5,6,7

    Jonas 4或5

    Jetty 6或7

    WebLogic 9,10,11

  如果想要监控其他的服务器需要安装一些插件,详情阅读UserGuide

  使用的浏览器最好是 Firefox Chrome或IE9

安装测试JavaMelody需要一个web应用,一个javaMelody的war包,以及两个jar包。

  1 web应用:我这里提供了一个简单的样例,就是一个web工程,里面包含一个index.html

  2 javamelody.war:这些文件都在google上面可以下载,但是考虑到一些没有FQ的朋友,这里保存在百度云上了。

    javamelody.war 这是用于部署使用的应用包

    javamelody.zip 这里面包含了userGuide使用手册以及源码

  3 需要的两个jar包,位于zip包里面。

  4 测试使用的应用包也放到这里了

  需要注意的是,JavaMelody监控是非常简单的,部署也很快。通常JavaMelody与应用的整个都是软件自动完成的,并不需要用户做任何的操作。只需要修改一点配置文件即可。监控与应用整合一般都不会超过10秒钟,通常都会自动的被编译环境发现:你需要做的知识拷贝两个jar包,添加10行xml的代码。如果你发布的应用程序不是一个相对目录,而是war包,那么就需要阅读以下下面的章节了。如果是ear(EJBs),那么就需要去阅读以下User Guide Advanced的一些相关内容了。

  1 jar包

  在javamelody.zip中有两个jar包,一个是javamelody.jar,另一个是jrobin-x.jar。拷贝这两个jar包到webapp中对应war包的WEB-INF/lib目录下。或者使用Maven,添加javamelody-core 依赖文件pom.xml。

  2 web.xml文件

  如果你的servletAPI是3.0的,想tomcat7 glassfish v3 jboss6等等,那么就需要配置xml了。不然的话,需要在应用war包的web.xml中添加如下的filter

 1 <filter> 2     <filter-name>monitoring</filter-name> 3     <filter-class>net.bull.javamelody.MonitoringFilter</filter-class> 4 </filter> 5 <filter-mapping> 6     <filter-name>monitoring</filter-name> 7     <url-pattern>/*</url-pattern> 8 </filter-mapping> 9 <listener>10     <listener-class>net.bull.javamelody.SessionListener</listener-class>11 </listener>

  

  如果是servlet3.0,还需要添加<async-supported>true</async-supported> 来支持异步请求

现在就可以启动应用服务器打开网址查看监控效果了。网址:http://<host>/<context>/monitoring

1   <host>是web应用服务器的部署IP,通常是localhost:8080 或者127.0.0.1:8080具体看你自己的应用服务器2   <context>是你的web应用的名字。

  注意:

  如果在启动过程中出错,出错信息含有window server,那么检查一下你是否使用了其他版本的server。并且添加系统参数-Djava.awt.headless=true

  如果使用到额是tomcat,那么在conf/catalina.properties中添加java.awt.headless=true

  然后重启服务器。

时间: 2024-12-20 15:10:14

javaee项目性能检测之JavaMelody的相关文章

Memcached性能检测

Memcached性能检测 Memcached作为一个内存key-value存储容器有非常优秀的性能,但是在上次的使用中确发现大量的数据丢失情况发生,导致cache的功能基本消失.具体的检测方式如下:检测命中率 检测命中率是一个最基本的.最宏观的方式,使用telnet连接到memcached服务器,然后执行stats命令就可以看到宏观的一些信息,如下图. 这个命令中比较关键的属性是get_hits和get_misses,get_hits表示读取cache命中的次数,get_misses是读取失败

Linux 常用 性能 检测 命令 解释

1.uptime [[email protected] ~]# uptime 15:08:15 up 98 days,  4:19,  2 users,  load average: 0.07, 0.29, 0.14 当前时间   系统运行至今的时间   多少用户登录当前系统   分别是1分钟,5分钟,15分钟前至今的负载情况 load average是队列平均长度,在队列中等待执行的进程数量 该值越低,说明进程更有可能立即被CPU处理,相反越高,说明进程更有可能阻塞 该命令可以检查服务器负载是

[转帖]Java性能检测工具-记录一次通过jstack排查Linux服务器CPU占用率很高的实践

Java性能检测工具-记录一次通过jstack排查Linux服务器CPU占用率很高的实践 https://www.jianshu.com/p/d4e31301ba2e 一.问题描述 Linux服务器的配置是4核16G,将war包部署到tomcat后,启动tomcat,发现内存占用率不高,但是CPU一直高达100%:浏览器输入相关url也无法访问该项目,且tomcat的进程一直存在,程序的配置什么的都没问题啊,一头雾水......通过top命令查看服务器的性能状况如下: [[email prote

关于JavaEE项目连接数据库提示 Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)的解决方案

最近这三天,都在解决如下的问题:我MyEclipse中的JavaEE工程,运行之后就提示Access denied for user 'root'@'localhost' (using password: YES),当我用一个Java文件连接MySQL数据库时,没有任何问题.于是我在网上找了一些解决方案: (1)让root给当前用户授予增删改查的权限:grant select,insert,update,delete on *.* to 用户名@"%" Identified by &q

intellij idea 为JavaEE项目建立Servlet

建立Servlet的方法 顶部菜单栏 View > Tool Windows > Web. 然后互相web窗口 右键Web>new>Servlet 弹出窗口 intellij idea 为JavaEE项目建立Servlet,布布扣,bubuko.com

SqlServer性能检测和优化工具使用详细

原文:SqlServer性能检测和优化工具使用详细 工具概要 如果你的数据库应用系统中,存在有大量表,视图,索引,触发器,函数,存储过程,sql语句等等,又性能低下,而苦逼的你又要对其优化,那么你该怎么办?哥教你,首先你要知道问题出在哪里?如果想知道问题出在哪里,并且找到他,咱们可以借助本文中要讲述的性能检测工具--sql server profiler(处在sql安装文件--性能工具--sql server profiler) 如果知道啦问题出现在哪里,如果你又是绝世高手,当然可以直中要害,写

QT项目性能调优小记

最近的项目用到了QT 5.5,项目在运行过程中出现了一段时间CPU占用率持续25%,并频繁断网的情况,遂决定对项目性能进行优化. 优化工具也是VS2010自带的性能分析工具,具体的使用方法参见:http://www.cnblogs.com/smark/archive/2011/10/12/2208039.html 其中可以选择“just my code”过滤出自己编写的代码. 通过性能分析工具可以找到占用CPU时间较多的函数,然后按照占有时间多少进行优化->再分析->再优化的步骤,多次优化后,

linux服务器性能检测工具nmon使用

今天介绍一款linux系统服务器性能检测的工具-nmon及nmon_analyser (生成性能报告的免费工具),亲测可用. 一.介绍 nmon 工具可以帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新.这个高效的工具可以工作于任何哑屏幕.telnet 会话.甚至拨号线路.另外,它并不会消耗大量的 CPU 周期,通常低于百分之二.在更新的计算机上,其 CPU 使用率将低于百分之一. 使用哑屏幕,在屏幕上对数据进行显示,并且每隔两秒钟对其进行更新.然而,您可以很容易地将这个时间间隔

无需SDK的性能检测

TestBird完成了游戏内部脚本的录制以后,又有一个问题横亘在了TestBird研发团队的面前.手游测试实现游戏在设备内部的性能检测需要在游戏APK包里嵌入SDK.然而众所周知,SDK的嵌入是一个非常消耗时间的过程,但作为专业的第三方手游测试服务提供商,TestBird不能容忍这样低效的操作模式. 于是,研发团队开始考虑是否能够通过其他的方式来实现游戏在设备内部的性能检测,同时还不需要接入SDK,减少不必要的工作负担.大家开始考虑通过直接用工具与安卓操作系统打交道解决获取接口信息权限.经过很长