jprofiler监控工具使用说明
Java性能监控:使用JProfiler或VisualVM等工具进行性能监控
Java性能监控:使用JProfiler或VisualVM等工具进行性能监控引言:在开发和部署Java应用程序时,性能是一个至关重要的方面。
优化应用程序的性能可以提高用户体验,减少资源消耗,并确保应用程序能够在高负载下正常运行。
为了实现这一目标,开发人员需要使用专业的性能监控工具来分析和优化应用程序的性能。
本文将介绍两种常用的Java性能监控工具:JProfiler和VisualVM,并探讨它们的使用方法和优势。
一、JProfilerJProfiler是一款功能强大的Java性能分析工具,它提供了丰富的功能和直观的界面,可以帮助开发人员深入了解应用程序的性能瓶颈,并提供相应的优化建议。
下面将介绍JProfiler的使用步骤:1. 安装和配置:首先,我们需要下载并安装JProfiler。
安装完成后,打开JProfiler并创建一个新的会话。
在会话配置中,选择要监控的Java进程,并设置相关的参数,如端口号和采样频率。
2. 启动监控:配置完成后,点击“开始监控”按钮,JProfiler将连接到目标Java进程,并开始收集性能数据。
在监控过程中,我们可以实时查看应用程序的CPU使用率、内存使用情况、线程状态等信息。
3. 分析性能数据:当我们收集到足够的性能数据后,可以使用JProfiler的分析工具来深入分析应用程序的性能问题。
例如,我们可以查看方法调用的耗时、内存分配的情况以及线程之间的竞争情况。
通过这些数据,我们可以找到性能瓶颈,并进行相应的优化。
4. 优化建议:在分析性能数据的过程中,JProfiler会根据收集到的数据提供相应的优化建议。
这些建议可以帮助开发人员识别潜在的性能问题,并提供相应的解决方案。
例如,JProfiler可能建议我们使用更高效的数据结构、减少内存分配或者优化数据库查询等。
二、VisualVMVisualVM是一款免费的Java性能监控和分析工具,它是基于Java技术的,可以与任何支持Java虚拟机诊断引擎(JVM TI)的Java应用程序进行交互。
jprofiler监控工具使用说明
JProfiler安装部署说明JProfiler是一个全功能的Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。
它把CPU、执行绪和内存的剖析组合在一个强大的应用中。
JProfiler可提供许多IDE整合和应用服务器整合用途。
JProfiler直觉式的GUI让你可以找到效能瓶颈、抓出内存漏失(memory leaks)、并解决执行绪的问题。
它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存漏失;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结(finalization)队列的对象都会被移除;整合精灵以便剖析浏览器的Java外挂功能,JProfiler功能很强大,可以监控普通的java application, applet, java web start, application server 等。
除了可以监控本地的程序,还可以对远程服务器上跑的应用进行监控。
目前JProfiler最新版本是6.0,由于JProfiler需要注册码,网上找到的资源中windows、linux都破解的只有4.3.2版本,这次就使用这个版本进行说明。
最新版下载连接/download/jprofiler/files.php。
一、安装说明在监控端安装windows版的jprofiler4,在服务器端安装linux版的jprofiler4。
windows下安装:点击exe文件进行安装,安装后使用文件中的注册码进行注册linux下服务端安装:直接解压即可二、配置对java application的监控下面以JProfiler监控远程应用程序为例,来说明对远程应用程序监控的配置方法:一、首先启动JProfiler,出现quick start对话框,选择An application on a remote computer,next,如下图:二、有2个选项,on this computer和on a remote computer,这里是选择被监控的程序的位置,这里选择on a remote computer,同时选择远程机器的类型是windows还是linux等,如下图:三、填写远程机器地址,这里是192.168.9.53,如下图:四、填写远程机器JProfiler的安装地址,我这里是/home/sps/jprofiler4,如下图:五、选择远程机器的java运行环境,这里是sun\1.5.0\hotspot,如下图:六、默认监控端口8849,如下图:七、Wait for ……为了在开发环境中获取监控的信息,它将等待远程计算机上的Jprofile GUI 启动,并和本机建立连接,这种方式比较便于修改jprofiler的配置信息。
JProfiler在Linux上的安装和使用
JProfiler在Linux上的安装和使用一前言前段时间网厅web服务老是OutOfMemoryError,查找了一些网站,找到一个应用监控工具JProfiler,可以在本地机器上监控远程服务器上的应用。
搭建环境的时候遇到了一些问题,也查找了网上的一些资源,但都不太全面,现把自己的安装和使用过程记录下来,方便后来人使用。
二环境介绍服务器端操作系统:linux RedHat AS 5应用服务器:WebLogic 9.2java虚拟机版本:1.5.0.07jprofiler版本:jprofiler_linux_5_1_4.sh(在csdn可以下载到)客户端操作系统:Windows Xp SP2Jprofiler5.1.4 for windows(安装包:jprofiler_windows_5_1_4.exe在csdn 可以下载到)三客户端JProfiler安装及配置1.打开本地jprofiler1-1 图1-1使用向导,我们可以选择Cancel2.1-2选择session->Integration wizards->New Remote Integration 3.1-31)The profiled application is located选择On a remote computer2)Platform of the remote computer选择Linux X86/AMD643)Next4.1-4 Remote address中写入所要监控的服务器IP地址51-5Installation directory中写入jprofiler在服务器中的路径,比如/opt/jprofiler5(此路径为远程服务器上jprofiler的安装路径)61)1-6-12)JVM Vendor选择Sun1-6-2Version 选择1.5.0,如果服务器操作系统是64位,需要勾选64bit jvm 3)Next71-7 JProfiler port :写入8849 默认81-8 选择Wait for a connection from the JProfiler GUI91-9红框中内容设置环境变量时使用。
jprofiler使用方法
点完OK按钮之后,会自动弹出tomcat启动的dos窗口,这个 窗口不能关闭,关闭之后,tomcat和jprofiler就停了。
这个视图会给出,虚拟中的对象实 哪里创建的,用这个基本上就能确 是哪里内存泄露了。
这个视图时看虚拟机垃圾回收的工作状态的。
这个视图时看虚拟机垃圾回收的工作状态的。
选中想要监控的对象,右键,现则“add Selection to Class tracker”
点这个加号按钮也能添加要监控的对象。
这个视图是 某个对象个实例个数,和时间的一个二 维表。
这个按钮千万不能点,监控时间稍微长 点,时间轴数据一多容易,死机。 如果监控了半天,你点了这个,估计这 半天的监控数据就白费了。
这个就是jprofer
连续按几次这个刷新按钮,之 后,随便找一个
红色部分就是做Mark时到现在的对象的增加量, 你主要关注的就是,你们的自定义对象是不是 有,一直增加,回收不下去的。 做完mark之后,过一段时间你看看,这个视图, 看这个试图前一定要连续点击“刷新”,这个 刷新强制虚拟机会后垃圾。
给出,虚拟中的对象实例是都是 ,用这个基本上就能确定,具体
jprofer的主界面了。
监控的对象。
个数,和时间的一个二
,监控时间稍微长 容易,死机。 源自了这个,估计这
Jprofiler监控Weblogic10_操作手册
1Jprofiler监控本地weblogic服务器1.1环境准备1.1.1Jprofiler7.1安装1.将Jprofiler安装文件jprofiler_windows_7_1.zip解压到任一一个没有中文字符的目录下如2.进入到安装目录的bin目录下(D:\jprofiler7.1\jprofiler7\bin),双击“jprofiler.exe”3.在弹出的窗口中除注册页面需要填写license(公司和姓名可以随便填写,license请参考),其他选择默认配置1.1.2Weblogic1.1.2.1安装Weblogic10.31.将Weblogic10的安装包“weblogic server103_win32(jh).7z”解压2.双击可执行文件“weblogic server103_win32.exe”进行安装3.安装步骤请参照:大体类似。
1.1.2.2创建Weblogic域1.Weblogic安装完成后需要创建一个新的Weblogic域2.具体创建域的操作步骤请参考:1.1.3MyEclipse安装开发工具我这里使用是myeclipse7(其他版本也可以),安装步骤: 略1.2示例1.2.1建立Java工程1、在开发工具myeclipse7中新建WEB项目Jprofilertest2、建包cn. Jprofilertest3、在该包下建类文件TestBean.java和TestMain.javapackage cn.Jprofilertest;public class TestBean {String name = "";public static void main(String[] args){System.out.println("test");}package cn. Jprofilertest;import java.util.ArrayList;public class TestMain {public static ArrayList list = new ArrayList(); //存放对象的容器public static int counter = 0; //作统计用}4、建测试用的JSP文件init1.jsp、init2.jspInit1.jsp(每次执行都创建1万个TestBean对象)<%@ page language="java" import="cn. Jprofilertest.*" pageEncoding="ISO-8859-1"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>init</title></head><body><%for(int i=0;i<10000;i++){TestBean b = new TestBean();TestMain.list.add(b);}%>SIZE:<%=TestMain.list.size()%><br/>counter:<%=TestMain.counter++%></body></html>注:Init2.jsp和init1.jsp一模一样即可(后面有用)。
jperfiler远程监控配置
JProfiler远程监控1、在Linux服务器端安装JProfiler2、在客户端安装Jprofiler并配置连接(截图是远程监控的windows平台):A)、session——integration wizards——New remote integrationB)、选择远程监控的平台windows,点击nextC)、选择jdk版本,如果服务器是64位的jdk则勾上64 bit jvm,点击nextD)、选择等待连接,点击nextE)、输入服务端ip地址,点击nextF)、输入服务端机器上的jprofiler的安装路径,点击nextG)、端口默认8849,点击nextH)、提示需要在服务端插入下面的启动命令:-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849客户端配置完成3、服务端,在C:\jboss-4.2.3.GA(2)\jboss-4.2.3.GA\bin下面编辑run.bat加入下面的启动项-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849如set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849启动jboss,看到waiting for a connection from the JProfiler GUI…就可以了4、配置好服务端后,继续点击客户端的next,然后再点击finish,连接即可注:A)、如果是tomcat则在编辑C:\my\apache-tomcat-6.0.14\apache-tomcat-6.0.14\bin下面catalina.bat如set JAVA_OPTS=%JAVA_OPTS%-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties"-agentpath:C:\my\jprofiler_windows_7_1_2\jprofiler7\bin\windows\jprofilerti.dll =port=8849B)、如果是weblogic则编辑C:\bea\weblogic92\samples\domains\workshop\bin 下面的setDomainEnv.cmd如:set JAVA_OPTIONS=%JAVA_OPTIONS% %JAVA_PROPERTIES%-Dwlw.iterativeDev=%iterativeDevFlag% -Dwlw.testConsole=%testConsoleFlag% -Dwlw.logErrorsToConsole=%logErrorsToConsoleFlag%-agentpath:C:\jprofiler7\bin\windows\jprofilerti.dll=port=8849C)、如果是linux中的tomcat,则编辑/usr/local/apache-tomcat-6.0.35/bin下面的catalina.sh文件,在java_opts后面加上-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"(注意-agent参数要加载“之内)如:if [ -z "$LOGGING_MANAGER" ]; thenJAVA_OPTS="$JAVA_OPTS-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"elseJAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"D)、如果是linux中的jboss,则编辑/usr/local/jboss-4.2.3.GA/bin下面的run.sh 文件,在java_opts后面加上-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849(注意-agent参数要加载“之内)如:if [ "$linux" = "true" ]; thenJAVA_OPTS="$JAVA_OPTS .preferIPv4Stack=true-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"FiE)、如果是linux中的weblogic,则编辑/home/weblogic/user_projects/domains/Test/bin下面的setDomainEnv.sh如:JAVA_OPTIONS="${JAVA_OPTIONS} ${JAVA_PROPERTIES}-Dwlw.iterativeDev=${iterativeDevFlag} -Dwlw.testConsole=${testConsoleFlag}-Dwlw.logErrorsToConsole=${logErrorsToConsoleFlag}-agentpath:/usr/local/jprofiler7/bin/linux-x86/libjprofilerti.so=port=8849"export JAVA_OPTIONS----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------另一种方式(方便的操作linux+weblogic)1、客户端连接配置:A)、session——new window,选择an application server,locally or remotely,点击nextB)、选择监控的服务器(weblogic9.2),点击nextC)、选择远程监控机器平台D)、选择jdk版本E)、选择立即启动,随时可以连接jprofiler,(即手动启动服务后,随时jprofiler 可以连接)F)、输入远程ip地址G)、输入远程机器上的jprofiler的路径H)、选择远程配置文件的路径(完成后要把本地生成的config.xml拷贝到这)选择拷贝配置文件到这个路径I)、这里选择提前在服务器上拷贝下来的startWebLogic.sh文件J)、显示端口,点击nextK)、提示要在服务端操作的内容,点击next2、服务端A)、把C:\Users\xxxxxxx\.jprofiler7\config.xml拷贝到服务器的/home/weblogic/user_projects/domains/Test/bin路径下(要设置下这个文件的可操作权限chmod a+x/home/weblogic/user_projects/domains/Test/bin/config.xml)B)、把F:\test\startWebLogic_jprofiler.sh拷贝到/home/weblogic/user_projects/domains/Test/bin路径下并授于可操作权C)、./startWebLogic_jprofiler.sh启动weblogic即可第一行是连接成功第二行和第三行是断开第四行是重新连接。
JProfiler使用入门
JProfiler使用入门(一)——准备工作JProfiler是一个全功能的Java剖析工具(profiler),主要用于检查和跟踪系统(限于Java开发的)的性能。
JProfiler可以通过时时的监控系统的内存使用情况,随时监视垃圾回收,线程运行状况等手段,从而很好的监视JVM运行情况及其性能。
它把CPU、线程和内存的剖析组合在一个强大的应用中。
JProfiler可提供许多IDE整合和应用服务器整合功能。
本文旨在通过简单的例子带领大家进入JProfiler的世界。
我也是刚刚学习哦,大家要是有鸡蛋的话留着吃就好了,现在鸡蛋好贵的^o^1、建立JBoss测试用例打开JProfiler显示QuickStart对话框,选择An application server,locally or remotely,如下图:2、选择服务器点击Next进入“服务器选择”对话框,选择JBoss 4.x,如下图3、选择启动脚本点击Next进入“启动脚本选择”对话框,输入JBoss启动脚本(run.bat)的路径,如下图:4、选择JVM的厂商、版本和模式点击Next进入“JVM选择”对话框,我们选择Sun公司的hotspot 1.4.2,如下图:5、输入JProfiler的端口号点击Next进入“JProfiler端口输入”对话框,我们保持默认不变,如下图:6、选择JBoss是否在连接到JProfiler后再启动JBoss点击Next进入“JBoss是否在连接到JProfiler后再启动”页面,这里我们保持默认选择,即在JBoss连接到JProfiler后再启动JBoss,如下图:7、确认配置点击Next进入“确认配置”对话框,确认配置是否正确,如下图,如果不正确点击Back到相应对话框进行修改。
8、配置完成点击Next进入“完成配置”对话框,点击finish完成配置,并启动JBoss服务器,控制台界面如下图:到这里JProfiler就建立起了一个简单的测试用例,后面的文章中我会陆续向大家介绍JProfiler如何测试一些具体例子。
jprofiler9.2入门教程
JProfiler9入门教程JProfiler简介 (2)JProfiler安装及配置 (2)window下安装及配置 (2)Linux下安装及配置 (15)JProfiler监控方式介绍 (17)1.等待模式 (17)2.非等待模式 (17)3.离线模式 (17)创建监视本地Tomcat的工程(等待模式) (18)创建监视远程Tomcat的工程(等待模式) (24)创建监视远程Tomcat的工程(非等待模式) (24)创建监视远程Java程序的工程 (25)Jprofiler分析视图简介 (26)遥测(Telemetries) (26)实时内存视图(Live memory) (27)堆遍历视图(Heap walker) (28)CPU视图(CPU views) (30)线程视图(Threads) (30)锁视图(Monitor&locks) (31)数据库快照对比(Databases) (31)Java探针(JEE&Probes) (31)Mbeans (31)案例分析 (32)内存泄漏查找 (36)线程阻塞 (43)查看占用CPU较多的方法 (44)检测sql语句的执行效率 (44)帮助手册 (45)JProfiler简介JProfiler 是一个非常优秀的的 JVM 性能分析工具,可监视本地和远程的 JVM,适用于各种操作系统。
常用的功能有:1、监视堆内存占用情况和创建对象实例的数量,找出内存泄露的根源。
2、监视占用 CPU 较多的方法3、监视线程的阻塞与死锁4、监视 GC 的耗时。
JProfiler安装及配置window下安装及配置安装:1) 从官网下载JProfiler安装包 jprofiler_windows-x64_9_2.exe2) 双击运行3) 选择“Customize installation” Next4) 选择“I accept the agreement” Next5) 点击browser选择安装目录 Next6) 选择“Window x86 32 and 64 bit” Next7) 一路默认 Next 直到出现“License information”弹框,选择 Yes 选项 Next8) 选择 Enter license key >Single or evaluation license (Name、Company随便写License key输入以下任一注册码) NextL-Larry_Lau@#23874-hrwpdp1sh1wrn#0620L-Larry_Lau@#36573-fdkscp15axjj6#25257L-Larry_Lau@#5481-ucjn4a16rvd98#6038L-Larry_Lau@#99016-hli5ay1ylizjj#27215L-Larry_Lau@#40775-3wle0g1uin5c1#06749)IDE Integration 非必选项,根据需要选择。
(Java性能监控工具)JProfiler连接Weblogic使用说明
配置本地连接:(jprofiler_windows_4_3_2)1.打开工具JProfiler后,在Session菜单下选择New windows,弹出Quickstart窗口界面,在该界面选择第三项An application server, locally or remotely, 然后点击Next.2.choose wizard。
进入Integration wizard界面,选择应用服务的类型和版本.此处,我们选择BEA Weblogic 8.1, 然后点击Next.3.选择连接的类型,是本地还是远程,这里我们选择本地(on this computer), 然后点击Next.4.选择Weblogic的启动文件Startweblogic.cmd, 然后点击Next5.选择JDK的提供厂商和其版本. 这里我们选择了Sun Microsystems 的1.4版, 然后点击Next6.选择两种处理模式,这里选择第一种,符合应用服务(JIT/hotspot complation enabled) ,选择JProfiler的使用端口,对于本地连接来说,此处作用不大,用默认即可7.选择第一个,启动weblogic时,试图去连接本次建立的连接,一直会等待到成功连接,而选择第二个,若是发现weblogic没有启动,将不做等待;这里我们选择第一项.8.对前面设置的内容统一展现,若是检查没有问题,则点击Next,进行下一步操作9.点击Finish, 完成了本次连接的配置,若是选择了马上连接,则下一步开始连接10.点击OK,开始连接连接成功补充:配置完成后如下配置远程连接2.1环境说明本地安装JProfiler监控机器上安装JProfiler两台机器能够ping通,且在本地映射监控机器上的Weblogic的安装目录(本文档把监控机器的bea815映射到本地的F盘),该目录必须是可写的.2.2步骤说明1.打开工具JProfiler后,在Session菜单下选择New windows,弹出Quickstart窗口界面,在该界面选择第三项An application server, locally or remotely, 然后点击Next.2. 进入Integration wizard界面,选择应用服务的类型和版本.此处,我们选择BEA Weblogic 8.1,然后点击Next.3. 选择连接的类型,是本地还是远程,这里我们选择远程(on a remote computer), 再选择远程计算机的操作系统,然后点击Next.4. 选择远程监控机器的IP地址或服务器名.5. 这里的路径为远程监控机器安装JProfiler的路径.6. 选择远程监控机器的Weblogic的启动文件,startWeblogic.cmd(先把远程监控机的weblogic的启动文件的路径映射成本地路径)7. 选择JDK的提供厂商和其版本. 这里我们选择了Sun Microsystems 的1.4版.8. 选择两种处理模式,这里选择第一种,符合应用服务(JIT/hotspot complation enabled)9. 选择JProfiler的使用端口,要求本地安装的JProfiler和远程监控机的JProfiler保持一致,才能够保证连接,此处都用默认的8849.10. 选择第一个,启动weblogic时,试图去连接本次建立的连接,一直会等待到成功连接,而选择第二个,若是发现weblogic没有启动,将不做等待;这里我们选择第一项.11.对前面设置的内容统一展现,若是检查没有问题,则点击Next,进行下一步操.12. 点击Finish, 完成了本次连接的配置,若是选择了马上连接,则下一步开始连接,在开始连接之前,要求先启动远程监控机上Weblogic目录下的JProfiler配置连接时产生的startWebLogic_jprofiler.cmd文件.(该文件和startWebLogic.cmd文件在同一目录下)13. 这里对配置好的连接进行设置,根据需要可以进行过虑等设置,完成后点击OK.14. 开始连接本地的weblogic应用,连接成功后,可以得到相关的信息.。
JProfiler简明使用教程
JProfiler简明使⽤教程
JProfile是⼀款性能瓶颈分析⼯具,监控粒度可以细化到某⼀个类包,堪称神器!我安装了⼀下9.11的版本,并简单说说使⽤⽅法。
1:创建⼀个监控任务
2:选择tomcat版本
3:监控远程服务器
4:选择oracle 1.5.0
5:填写需要监控的服务器地址
6:填写待监控的服务器下的tomcat/bin⽬录地址
7:startup.sh 路径
8:端⼝默认8849
9:选择稍后启动客户端,会把刚刚的操作保存下来暂时不启动
10:之后会在你的⽬录下⽣成⼀个startup_jprofiler.sh ⽂件
11:将startup_jprofiler.sh ⽂件拷贝到tomcat的bin⽬录下
12:启动这个脚本 ./startup_jprofiler.sh ,看到下⾯这个命令就是启动成功了,正在等待连接你本地的客户端
13:修改⼀下我们的客户端配置
14:将keep VMalive 勾选上,否则会报错
15:启动客户端,可以看到正在监控服务器。
jprofiler监控工具使用说明
jprofiler监控工具使用说明JProfiler安装部署说明JProfiler是一个全功能的Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。
它把CPU、执行绪和内存的剖析组合在一个强大的应用中。
JProfiler可提供许多IDE整合和应用服务器整合用途。
JProfiler直觉式的GUI让你可以找到效能瓶颈、抓出内存漏失(memory leaks)、并解决执行绪的问题。
它让你得以对heap walker 作资源回收器的root analysis,可以轻易找出内存漏失;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结(finalization)队列的对象都会被移除;整合精灵以便剖析浏览器的Java外挂功能,JProfiler功能很强大,可以监控普通的java application, applet, java web start, application server 等。
除了可以监控本地的程序,还可以对远程服务器上跑的应用进行监控。
目前JProfiler最新版本是6.0,由于JProfiler需要注册码,网上找到的资源中windows、linux都破解的只有4.3.2版本,这次就使用这个版本进行说明。
最新版下载连接/download/jprofiler/files.php。
一、安装说明在监控端安装windows版的jprofiler4,在服务器端安装linux版的jprofiler4。
windows下安装:点击exe文件进行安装,安装后使用文件中的注册码进行注册linux下服务端安装:直接解压即可二、配置对java application的监控下面以JProfiler监控远程应用程序为例,来说明对远程应用程序监控的配置方法:一、首先启动JProfiler,出现quick start对话框,选择An application on a remote computer,next,如下图:二、有2个选项,on this computer和on a remote computer,这里是选择被监控的程序的位置,这里选择on a remote computer,同时选择远程机器的类型是windows还是linux等,如下图:三、填写远程机器地址,这里是192.168.9.53,如下图:四、填写远程机器JProfiler的安装地址,我这里是/home/sps/jprofiler4,如下图:五、选择远程机器的java运行环境,这里是sun\1.5.0\hotspot,如下图:六、默认监控端口8849,如下图:七、Wait for ……为了在开发环境中获取监控的信息,它将等待远程计算机上的Jprofile GUI 启动,并和本机建立连接,这种方式比较便于修改jprofiler的配置信息。
JProfiler简易操作指南
目录1.文档说明 (2)2.JPROFILER测试工具介绍 (2)3.JPROFILER简易实用手册 (2)3.1.JProfiler的安装说明 (2)3.2.JProfiler的配置说明 (2)3.2.1. 本地服务器集成配置 (2)3.2.2. 远程服务器集成配置 (9)3.3.JProfiler的视图说明 (14)3.3.1. Memery Views (14)3.3.2. Heap Walker (19)3.3.3. CPU Views (19)3.3.4. Thread V iews (21)3.3.5. VM Telemetry Views (22)1. 文档说明此文档提供给开发人员和测试初学者使用,指导初学者入学会如何使用JProfiler工具辅助测试。
主要侧重于如何JProfiler的配置使用和视图介绍。
请各位不要将该指南当作帮助,它无法提供向帮助哪样多的内存,详细的帮助在工具安装后在“Help”中可以查看。
2. JProfiler测试工具介绍JProfiler是ej-technologies公司的一款专用于JAVA的性能监控工具。
该工具通过与IDE和WEB应用服务器的集成,可以监控当前应用的对象、VM使用情况、CPU使用情况、线程运行情况等,借此您可以分析您的应用程序是否存在内存泄露、线程使用不当等问题。
3. JProfiler简易实用手册3.1. JProfiler的安装说明1. 如何获取JProfiler?您可以从ej-technologies公司的官方网站下载最新稳定版本的JProfiler安装包,地址:/prodUCts/jprofiler/overview.Html。
你需要注册,然后JProfiler 公司会通过Email方式发送一个key给你,该Key给您提供一个10天的免费试用期。
2. 如何安装JProfiler?Windows版本的JProfiler安装:无须过多说明,按照安装步骤傻瓜式安装即可。
jprofiler使用手册
jprofiler使用手册JProfiler是一种用于Java应用程序性能分析和调试的强大工具。
它提供了丰富的功能,可以通过深入分析应用程序的CPU使用率、内存使用情况和线程活动等来帮助开发人员识别潜在的性能瓶颈和内存泄漏问题。
本使用手册将为您提供关于如何使用JProfiler的详细指南。
以下是您需要了解的主要部分:1. 安装和配置JProfiler:- 下载JProfiler并进行安装。
- 配置JProfiler与您的Java开发环境集成。
2. 启动应用程序:- 启动您要分析的Java应用程序。
3. 连接JProfiler:- 打开JProfiler并选择“新会话”选项。
- 配置与您的应用程序相连接的设置。
- 连接到应用程序并开始监控。
4. 分析CPU性能:- 在JProfiler中选择CPU视图。
- 分析CPU使用率和线程活动。
- 识别可能的性能瓶颈。
5. 分析内存使用情况:- 在JProfiler中选择内存视图。
- 查看堆中的对象和内存使用情况。
- 识别内存泄漏问题。
6. 分析线程活动:- 在JProfiler中选择线程视图。
- 查看线程的状态和调用栈。
- 识别死锁和线程间竞争问题。
7. 进行代码分析:- 在JProfiler中选择代码视图。
- 分析代码的执行性能和效率。
- 识别可优化的代码部分。
8. 生成报告和导出数据:- 在JProfiler中生成性能报告。
- 导出数据以进行进一步的分析和共享。
本手册只是对JProfiler功能的简要介绍,您可以根据具体需求深入了解每个功能并应用到您的实际项目中。
JProfiler的强大功能将帮助您提高Java应用程序的性能和稳定性,并提供优化的建议和解决方案。
JPROFILER使用文档
JPROFILER使用文档目录1.简述 (4)2.下载及安装 (4)3.监控内容 (11)3.1.Telemetries (11)3.2.Live memory (12)3.3.Heap Walker (14)3.4.CPU views (16)3.5.Threads (18)3.6.Monitors & locks (19)3.7.Databases (21)3.8.JEE & Probes (21)3.9.MBeans (21)图目录图2.1 新建session (4)图2.2 选择tomcat版本 (5)图2.3 选择本地服务器 (5)图 2.4 选择JVM版本 (6)图 2.5 选择启动模式 (7)图 2.6 配置tomcat启动文件位置 (7)图 2.7 配置JProfiler端口 (8)图 2.8 检查配置信息 (8)图 2.9 选择启动选项 (9)图 2.10 启动JProfiler (9)图 2.11 JProfiler监控画面 (10)图 2.12 JProfiler tomcat终端 (10)图 3.1 内存类型图例 (11)图 3.2 记录对象类型图例 (11)图 3.3 生产/释放类型图例 (11)图 3.4 类类型图例 (12)图 3.5 线程类型图例 (12)图 3.6 内存图表 (13)图 3.7 Allocation Call Tree (13)图 3.8 Allocation Hot Spots (14)图 3.9 Class Tracker (14)图 3.10 新建堆快照 (15)图 3.11 Java Heap Dump选项 (15)图 3.12 Heap使用图表 (16)图 3.13 选择单个组件查看heap分配详情 (16)图 3.14 CPU Call Tree (17)图3.15 CPU热点 (17)图 3.16 CPU Call Graph (17)图 3.17 CPU Method Statistics (18)图 3.18 线程历史图表 (18)图3.19 Thread Monitor (18)图3.20 Thread Dumps线程分析器 (19)图3.21 死锁图表 (20)图3.22 Current Monitors (20)图 3.23 Monitor Usage Statistics (20)图 3.24 JDBC连接图表 (21)1.简述JProfiler是一个全功能的JAVA剖析工具,主要针对javaEE和javaSE开发,将CPU、线程、内存、数据库等的剖析组合在一个强大的应用中,并提供多种IDE整合和应用服务器整合。
JConsole的使用方法 JProfiler监控使用
JConsole的使用方法JProfiler监控使用1.首先什么都不用装哦,只要你本机有jdk,作为java 人,我们不可能没有吧,哈哈哈2.echo $JA V A_HOME,找出java安装路径3.自己寻觅一个路径mkdir jcon_pwd,我们暂时命名为$your_path/jcon_pwd4.执行cp$JA V A_HOME/jre/lib/management/jmxremote.pwd.template $your_path/jcon_pwd/jmxremote.pwd 5.vi jmxremote.pwd,修改monitorRole *****(your password)6.在env.sh文件中的JA V A_OPTS参数中,加入:-Dcom.sun.management.jmxremote.port=9999-Dcom.sun.management.jmxremote.pwd.file=/home/zhao/brmm s/deploy/bin/jcon_pwd/jmxremote.pwd-Dcom.sun.management.jmxremote.authenticate=false-Dcom.sun.management.jmxremote.ssl=false 注意port=9999,要是一个没有人使用的端口。
7.执行hostname -i ,如果显示的是127.0.0.1,需要修改/etc/hosts文件#127.0.0.1 localhost localhost.localdomain localhost <server ip> localhost localhost.localdomain localhost 8. 检查vi/etc/sysconfig/network NETWORKING=yes HOSTNAME=主机名//在这里可以修改主机名9.启动jbossserver,./startws.sh -d<serverip> stat -na|grep<listenport>, 如netstat -na |grep 9999 查看后为listen 状态11.打开客户端%JA V A_HOME%/bin,双击打开jconsole.exe -------------------------------------------华丽的分割线----------------------------------------- 12.指定连接参数:远程主机: 服务器的真实IP地址端口: port($JA V A_OPTIONS中-Dcom.sun.management.jmxremote.port指定的端口)用户名:monitorRole密码:your password(jmxremote.pwd中设置的密码) 13. 点击“连接”,OK~~ 经过上述13步~你就可以通过jdk的自带工具,对服务器端jvm的各项参数进行监控啦~~相当滴直观~~呵呵JConsoleJConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。
JProfiler工具使用简介
JProfiler的功能模块
• 内存剖析(Memory profiler) • 堆遍历(Heap walker) • CPU剖析(CPU profiler) • 线程剖析(Thread profiler) • VM遥感勘测技术(VM Telemetry
profiler)
4
Profiler主要功能详细说明
线程历史视图
它显示了线程活动和 线程的状态。按照线 程开始的顺序显示 JVM中所有线程状态 的详细历史信息在视 图左手点,线程的名 字是固定显示不变的 ,时间轴的开始时间 与JVM的第一个线程 的时间保持一致。它 用颜色的不同来标识 线程的状态:
12
线程监控视图
显示当前运行的线 程列表以及相关的 时间和状态信息。 在视图中有以下信 息: Ø 线程的名称 Ø 线程所属线程组的 名称 Ø 线程开始的时间 Ø 结束时间 Ø 线程的状态
JProfiler工具使用简介
2010年7月
主要内容
• JProfiler 简介 • JProfiler主要功能详细说明
2
JProfiler简介
JProfiler工具介绍
JProfiler是一个全功能的 Java 剖析工 具,JProfiler 直觉式的 GUI 可以让用 户通过视觉上的观察就能方便的找到 瓶颈和内存漏失等问题。
我们实际应用过程中最常用到的功能模块的 使用顺序是:
• VM遥感勘测视图 • CPU视图 • 线程视图
如果我们在第一步检查内存情况的时候就 出现了问题,那么以后的检查过程就失去 意义;但是如果正常,那就可以按照步骤 进行接下来的操作。
5
1.VM遥感勘测剖析 Memory视图
已使用内存1.3M,未 使用内存3.3M,内存
10分钟学会JProfiler安装和使用
10分钟学会JProfiler安装和使用JProfiler在Linux上的安装和使用一前言前段时间网厅web服务老是OutOfMemoryError,查找了一些网站,找到一个应用监控工具JProfiler,可以在本地机器上监控远程服务器上的应用。
搭建环境的时候遇到了一些问题,也查找了网上的一些资源,但都不太全面,现把自己的安装和使用过程记录下来,方便后来人使用。
二环境介绍服务器端操作系统:linux RedHat AS 5应用服务器:WebLogic 9.2java虚拟机版本:1.5.0.07jprofiler版本:jprofiler_linux_5_1_4.sh(在csdn可以下载到)客户端操作系统:Windows Xp SP2Jprofiler5.1.4 for windows(安装包:jprofiler_windows_5_1_4.exe在csdn 可以下载到)1-2选择session->Integration wizards->New Remote Integration3.1-31)The profiled application is located选择On a remote computer2)Platform of the remote computer选择Linux X86/AMD643)Next4.1-4Remote address中写入所要监控的服务器IP 地址51-5Installation directory中写入jprofiler 在服务器中的路径,比如/opt/jprofiler5(此路径为远程服务器上jprofiler的安装路径)61)1-6-1 2)JVM Vendor选择Sun1-6-2Version 选择 1.5.0,如果服务器操作系统是64位,需要勾选64bit jvm3)Next71-7JProfiler port :写入8849 默认81-8选择Wait for a connection from the JProfiler GUI91-9红框中内容设置环境变量时使用。
JProfiler使用说明2.0
JProfiler使用说明2.0 JProfiler简介JProfiler是一个全功能的Java剖析工具,专用于检查和跟踪J2SE和J2EE应用程序,JProfiler可以通过实时的监控系统的内存使用情况,随时监视垃圾回收,CPU使用时间,线程运行状况等手段,从而很好的监视JVM运行情况及其性能。
同时JProfiler可以和支持和常用的IDE和中间件整合使用。
注:本文档以JProfiler 5.1.4为例。
JProfiler配置JProfiler可以支持和常用的IDE和中间件整合使用,方便在开发和测试中检测系统性能。
不过JProfiler和IDE,中间件无法整合,给开发时检测代码性能造成一定不便。
JProfiler和DNA Developer整合配置1.打开JProfiler并选择New Session 页签。
2.选择New Remote Integration3.选择On this computer ,next4.按如下设置,next5.默认端口,next6.选择Wait a connection from the JProfiler GUI, next。
7.出现以下配置提示信息,可见要完成配置还需两步:一,配置启动参数;二,配置环境变量8.复制启动参数,粘贴到DNA Developer 的VM arguments中9.复制JProfiler的启动路径,添加到环境变量PA TH中10.回到JProfiler,next11.选择I Will start the session later,finish。
下图标的就是配置好的Session,可以点击右侧的Edit按钮重新命名。
启动1.在DNA Developer 中以Debug模式启动配置了JProfiler 命令参数的程序2.控制台中出现以下提示信息,等待JProfiler GUI启动。
3.打开JProfiler 在Open Session 页签中选择之前配置好的Session。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JProfiler使用说明整理人:大傻,徐磊整理时间:2010-4-11 简介 (2)2 安装说明 (2)3 配置 (2)3.1 本机监控配置 (2)3.2 远程监控配置 (6)3.3 启动监控 (11)4 主要功能简介 (12)4.1 内存剖析M EMORY PROFILER (12)4.2 堆遍历H EAP WALKER (13)4.3 CPU剖析CPU PROFILER (13)4.4 线程剖析T HREAD PROFILER (14)4.5 VM遥感勘测技术VM TELEMETRY (15)5 实战操作 (16)5.1 任务目标 (16)5.2 配置说明 (16)5.3 测试项目 (16)5.4 配置测试 (17)5.5 开始测试 (23)5.6 总结 (27)1简介JProfiler是一个全功能的Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。
它把CPU线程和内存的剖析组合在一个强大的应用中。
JProfiler可提供许多IDE整合和应用服务器整合用途。
JProfiler直觉式的GUI让你可以找到效能瓶颈、抓出内存泄漏(memory leaks)、并解决线程的问题。
它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存泄漏;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结(finalization)队列的对象都会被移除;整合精灵以便剖析浏览器的Java 外挂功能,JProfiler功能很强大,可以监控普通的java application, applet, java web start, application server 等。
除了可以监控本地的程序,还可以对远程服务器上跑的应用进行监控。
最新版下载连接/download/jprofiler/files.php。
当前使用版本为5.1.42安装说明1.安装windows下安装,点击exe文件进行安装,默认安装即可。
linux下服务端安装,直接解压即可。
安装时会自动搜索是否安装过JDK ,可不必配置.2.注册方法:1)破解文件解压缩到[程序安装目录]/bin文件夹下,覆盖其中两个文件夹。
2)在命令行模式下到当前目录下执行命令:“java -cp . Keygen”就能获取到注册码。
【注意事项】由于是破解版本,有些破解的ID,使用时存在不能成功启动监控,出现这种问题,建议重新换一个ID。
3配置3.1本机监控配置1.在向导界面中选择An application server locally or remotely(应用服务器在本地或远程)。
2.选择integration wizard(集成向导)。
3.选择the profiled application is located选择本地电脑4.选择Tomcat启动脚本文件路径5.在此选择JDK类型和版本号。
6.在此选择Jprofiler端口号,默认是8849。
7.在此选择Jprofiler启动界面方式。
l wait for a connection from the Jprofiler GUI 监控时tomcat需要由JProfiler 来启动l Don’t wait startup immediately 监控tomcat时不用由JProfiler来启动,可以在tomcat运行中,随时打开JProfiler进行监控。
JProfiler会在之前所选择启动脚本的目录中生成startup_jprofiler.bat,用这个启动脚本启动tomcat就行了3.2远程监控配置1.本地机和远程机都需要安装JProfiler,然后在本地机上的JProfiler中进行设置。
选择An application server locally or remotely(应用服务器在本地或远程),选择integration wizard(集成向导)。
2.选择the profiled application is located远程电脑操作系统类型。
3.填写远程电脑IP。
4.选择远端机上的JProfiler的安装目录。
5.将远端机的tomcat启动脚本拷到本地(目录任意),并在这里选中。
6.此选择JDK类型和版本号。
7.在此选择Jprofiler端口号,默认是8849.8.在此选择Jprofiler启动界面方式。
9.这里的“Wait for JProfiler GUI”,“Don't wait for JProfiler GUI, startupimmediately”,与本地监控中的含义相同。
如果选择“Don't wait for JProfiler GUI, startup immediately”会跳转到下面的界面中此处要将本地机的config.xml同步到远端机上。
填写本地机的config.xml文件在远端机上的路径,然后选择拷贝的方式,我选的是manual手动方式。
“copy to directory”试了但没成功,“execute command”没试过。
之后,JProfiler会根据之前所选中的启动脚本,在同一目录中生成一个新的启动脚本。
将这个脚本复制到远端机上。
在远端机上用这个脚本启动tomcat,本地JProfiler才能监控。
3.3启动监控1.启动应用服务器如TOCMAT,jboss (使用Startup_jprofiler.bat脚本启动)2.启动windows下jprofiler,选择session/start center3.选择刚才配置的服务器,点击ok,就开始监控了。
4.看下应用程序下的日志,说明连接成功。
5.JProfiler> Listening on port: 8849。
6.JProfiler> Reconnection. Using last settings.。
4主要功能简介4.1内存剖析Memory profilerJProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。
所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。
l所有对象All objects显示类或在状况统计和尺码信息堆上所有对象的包。
你可以标记当前值并显示差异值(mark current values)。
l记录对象Record objects显示类或所有已记录对象的包。
你可以标记出当前值并且显示差异值。
l分配访问树Allocation call tree显示一棵请求树或者方法、类、包或对已选择类有带注释的分配信息的J2EE组件。
l分配热点Allocation hot spots显示一个列表,包括方法、类、包或分配已选类的J2EE组件。
你可以标注当前值并且显示差异值。
对于每个热点都可以显示它的跟踪记录树。
4.2堆遍历Heap walker在JProfiler的堆遍历器(Heap walker)中,你可以对堆的状况进行快照并且可以通过选择步骤下寻找感兴趣的对象。
堆遍历器有五个视图:l类Classes显示所有类和它们的实例。
l分配Allocations为所有记录对象显示分配树和分配热点。
l索引References为单个对象和“显示到垃圾回收根目录的路径”提供索引图的显示功能。
还能提供合并输入视图和输出视图的功能。
l数据Data为单个对象显示实例和类数据。
l时间Time显示一个对已记录对象的解决时间的柱状图。
4.3CPU 剖析CPU profilerJProfiler 提供不同的方法来记录访问树以优化性能和细节。
线程或者线程组以及线程状况可以被所有的视图选择。
所有的视图都可以聚集到方法、类、包或J2EE组件等不同层上。
CPU视图部分包括:l访问树Call tree显示一个积累的自顶向下的树,树中包含所有在JVM中已记录的访问队列。
JDBC,JMS 和JNDI服务请求都被注释在请求树中。
请求树可以根据Servlet和JSP对URL的不同需要进行拆分。
l热点Hot spots显示消耗时间最多的方法的列表。
对每个热点都能够显示回溯树。
该热点可以按照方法请求,JDBC,JMS和JNDI服务请求以及按照URL请求来进行计算。
l访问图Call graph显示一个从已选方法、类、包或J2EE组件开始的访问队列的图。
4.4线程剖析Thread profiler对线程剖析,JProfiler提供以下视图:l线程历史Thread history显示一个与线程活动和线程状态在一起的活动时间表。
l线程监控Thread monitor显示一个列表,包括所有的活动线程以及它们目前的活动状况。
l死锁探测图表Deadlock Detection显示一个包含了所有在JVM里的死锁图表。
l目前使用的监测器Current monitor useage显示目前使用的监测器并且包括它们的关联线程。
l历史检测记录History usage history显示重大的等待事件和阻塞事件的历史记录。
l监测使用状态Monitor usage statistics显示分组监测,线程和监测类的统计监测数据。
4.5VM 遥感勘测技术VM telemetry观察JVM的内部状态,JProfiler提供了不同的遥感勘测视图,如下所示: l堆Heap显示一个堆的使用状况和堆尺寸大小活动时间表。
l记录的对象Recorded objects显示一张关于活动对象与数组的图表的活动时间表。
l垃圾回收Garbage collector显示一张关于垃圾回收活动的活动时间表。
l类Classes显示一个与已装载类的图表的活动时间表。
l线程Threads显示一个与动态线程图表的活动时间表。
5实战操作5.1任务目标找出项目中内存增大的原因5.2配置说明操作系统:Windows2003Web容器:Tomcat5.0.23JDK版本:sun1.4.2监控类型:本地Jprofiler安装路径:D:\jprofiler5Tomcat安装路径:D:\Tomcat55.3测试项目1.新建WEB项目test2.建包cn.test3.在该包下建类文件TestMain.java 和TestBean.javapackage cn.test;public class TestBean {String name = "";}package cn.test;import java.util.ArrayList;public class TestMain {public static ArrayList list = new ArrayList(); //存放对象的容器public static int counter = 0; //作统计用}4.建测试用的JSP文件init1.jsp、init2.jspInit1.jsp(每次执行都创建1万个TestBean对象)<%@ page language="java" import="cn.test.*"pageEncoding="ISO-8859-1"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title>init</title></head><body><%for(int i=0;i<10000;i++){TestBean b = new TestBean();TestMain.list.add(b);}%>SIZE:<%=TestMain.list.size()%><br/>counter:<%=TestMain.counter++%></body></html>Init2.jsp和init1.jsp一模一样即可(后面有用)。