JProfiler在Red5上的安装和使用
- 格式:doc
- 大小:903.50 KB
- 文档页数:14
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上的安装和使用一前言前段时间网厅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使⽤⽅法Jprofiler使⽤⽅法1、说明改善Java服务器的性能需要模拟负载下的服务器。
创建⼀个模拟环境、搜集数据并且分析结果可能是对许多开发⼈员的挑战。
这⾥介绍了使⽤JProfiler跟踪分析Java服务器的性能。
简单的性能问题很容易分离并解决,然⽽,⼤的性能问题,如内存溢出或者系统的罢⼯,通常在系统处于⾼负载情况下发⽣,就不能这么简单的处理了。
这些问题需要⼀个独⽴的测试环境、⼀个模拟的负载,并且需要仔细地分析和跟踪。
2、改善服务器的性能服务器的性能改善是依赖于数据的。
没有可靠的数据基础⽽更改应⽤或环境会导致更差的结果。
分析器提供有⽤的Java服务器应⽤信息,但由于从单⽤户负载下的数据与多⽤户负载下得到的数据是完全不同的,这导致分析器的数据并不精确。
在开发阶段使⽤分析器来优化应⽤的性能是⼀个好的⽅式,但在⾼负载下的应⽤分析可以取到更好的效果。
在负载下分析服务器应⽤的性能需要⼀些基本的元素:1、可控的进⾏应⽤负载测试的环境。
2、可控的⼈造负载使得应⽤满负荷运⾏。
3、来⾃监视器、应⽤和负载测试⼯具⾃⾝的数据搜集。
4、性能改变的跟踪。
不要低估最后⼀个需求(性能跟踪)的重要性因为如果不能跟踪性能你就不能实际的管理项⽬。
性能上10-20%的改善对单⽤户环境来说并没有什么不同,但对⽀持⼈员来说就不⼀样了。
20%的改善是⾮常⼤的,⽽且通过跟踪性能的改善,你可以提供重要的反馈和持续跟踪。
虽然性能跟踪很重要,但有时为了使后续的测试更加精确⽽不得不抛弃先前的测试结果。
在性能测试中,改善负载测试的精确性可能需要修改模拟环境,⽽这些变化是必须的,通过变化前后的负载测试你可以观察到其中的转变。
3、分析器原理现在⼏乎所有的分析器都是从同⼀个起点和约束开始的:Java 虚拟机分析器界⾯(JVMPI) (参考"The Java Virtual Machine Profiler Interface")。
目录1.总述 (2)1.1JProfiler安装配置和使用说明 (2)1.2JProfiler安装准备 (2)1.3安装介质 (2)1.4序列号 (3)2.JProfiler Windows端安装与配置 (3)2.1安装 (3)2.2运行JProfiler并进行配置 (3)2.3Linux上Weblogic Server配置 (5)3.案例分析 (8)3.1问题描述 (8)3.2Web应用服务器的物理部署 (9)3.3Web应用服务器启动脚本中的内存参数 (9)3.4Web应用服务器的重要部署参数 (9)3.5实例详细分析 (10)4.总结 (26)1.总述在中间件应用服务器的整体调优中,有关于等待队列、执行线程,EJB池以及数据库连接池和Statement Cache方面的调优,这些都属于系统参数方面的调优,本文主要从另外一个角度,也就是从应用的角度来解决中间件应用服务器的内存泄露问题,从这个角度来提高系统的稳定性和性能。
1.1JProfiler安装配置和使用说明JProfiler是一个全功能的Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。
JProfiler直觉式的GUI让你可以找到性能瓶颈、抓出内存泄漏(memory leaks)、并解决多线程的问题。
通过它可以对heap walker作资源回收器的root analysis,可以轻易找出内存漏失;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结(finalization)队列的对象都会被移除。
1.2JProfiler安装准备1.3安装介质Jprofiler5.1.4目前支持的操作系统包括:aix-ppc、aix-ppc64、hpux-parisc、hpux-parisc64、linux-x64、linux-x86、windows、windows-64。
安装介质见附件(一)。
Windows下Red5安装与配置RED5简介Red5是一个采用Java开发开源的Flash流媒体服务器。
它支持:把音频(MP3)和视频(FLV)转换成播放流;录制客户端播放流(只支持FLV);共享对象;现场直播流发布;远程调用。
Red5使用RSTP作为流媒体传输协议,在其自带的一些示例中演示了在线录制,flash流媒体播放,在线聊天,视频会议等一些基本功能。
软件环境既然是Java开发的,自然少不了要安装JDK,这里使用的是JDK1.6版本,Red5用的是1.0.1版本,Red5内嵌了Tomcat6.x服务器。
以下是Red5和Flowplayer3.2.x下载地址。
Red5:/downloads/Flowplayer:/download/软件安装与环境配置1.安装JDKJDK这里使用的是1.6版本,最常用,与Red5搭配更好。
可以自行修改安装路径,这里默认。
安装完毕后设置环境变量:JAVA_HOME,PATH和CLASSPATH。
1,新建变量名:JAVA_HOME,变量值:C:\Program Files\Java\jdk1.6.0_21 2,打开PATH,添加变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 3,新建变量名:CLASSPATH,变量值:(注意此处以.;开始,英文状态).;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar备注:1,.表示当前路径,%JAVA_HOME%就是引用前面指定的JAVA_HOME;2,JAVA_HOME指明JDK安装路径,此路径下包括lib,bin,jre等文件夹,tomcat,eclipse等的运行都需要依靠此变量。
3,PATH使得系统可以在任何路径下识别java命令。
4,CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java 命令才能识别。
JProfiler使用说明(版本号1.0)2008年1月第 1 页共 80 页文档更改历史记录序号 主要更改内容 版本号 更改人 更改时间1 建立文档 1.0 2008-01-11 23456789第 2 页共 80 页目录1JPROFILER'S START CENTER (5)1.1O PEN SESSION (5)1.2N EW SESSION (6)1.2.1New Session (6)1.2.2New server integration (7)1.3C ONVERT SESSION (17)1.4O PEN SNAPSHOT (17)2管理SESSION (18)2.1A PPLICATION SETTINGS DIALOG (18)2.1.1session名 (18)2.1.2session类型 (18)2.2P ROFILING SETTINGS (20)2.2.1Adjusting call tree collection options (20)2.2.2JA V A 子系统 (23)3监测视图 (27)3.1内存视图 (27)3.1.1所有对象(ALL objects) (28)3.1.2记录的对象(Recorded objects) (29)3.1.3分配调用树(Allocation call tree ) (29)3.1.4分配热点视图(Allocation hot spots view) (29)第 3 页共 80 页3.1.5类跟踪(Class tracker) (30)3.2CPU视图 (30)3.2.1调用树视图(Call tree view) (30)3.2.2热点视图(Hot spot view) (33)3.2.3调用图(Call graph) (34)3.3线程视图 (40)3.3.1线程历史视图 (40)3.3.2线程监控视图 (41)3.3.3死锁检测图形 (43)3.3.4当前监控使用视图 (43)3.3.5监控使用历史视图 (44)3.3.6监控使用统计 (44)3.4VM遥感监测视图 (45)3.4.1Heap (45)3.4.2Objects (45)3.4.3Garbage collector (45)3.4.4Classes (45)3.4.5Threads (45)4IDE集成(ECLIPSE 3.X) (46)第 4 页共 80 页1JProfiler's start center使用JProfiler's start center,你可以创建新的会话,编辑已有会话或者打开已保存的会话。
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如何测试一些具体例子。
在linux下安装使用jprofiler一、安装1.在jprofiler的官网上下载jprofiler对应linux的安装包。
(教程使用版本,6.2.4)2.命令行中在安装包文件夹下执行语句:chmod +x jprofiler_linux_6_2_4.sh3.执行安装文件,按提示安装。
4.配置环境变量:在命令行中执行语句:echo export LD_LIBRARY_PATH=/opt/jprofiler6/bin/linux-x64 >>/etc/profile source /etc/profile完成上述步骤后安装完成,可在安装目录下开启jprofiler二、初次使用,配置一个newSession(请在图形界面上使用jprofiler软件)1、点击startCenter,弹出对话框,newSession->New Server Intergration2.下一步,选择application server(教程使用tomcat为6.X版本)3.下一步,选择4.下一步,(教程使用JDK1.5)5.下一步,选择Wait for a connection from the JProdiler GUI6.下一步,在tomcat安装目录中找到startup.sh文件7.下一步,选择端口8.下一步,浏览刚刚配置的信息,检测是否有误9.下一步,选择No,I will start the session later,配置完成。
注意:可能由于配置错误或其他原因,有时可能出现不能连接状态,这是请打开文件,startup_jprofiler.sh文件,在其中加上语句:JA V A_OPTS="$JA V A_OPTS-agentlib:jprofilerti=port=8849-Xbootclasspath/a:/opt/jprofiler6/bin/agent.jar"(如下图所示)完成上述步骤后,选中刚建立的session,开启连接后进行如下配置(其余详细配置使用请参考文档jprofiler使用记录)上海万代制药有限公司EHS-010-00 高危险性作业许可管理规定编制:审核:批准:2012年7月1日发布 2012年8月1日实施高危险性作业许可管理规定1 目的为加强安全管理,从严管控临时性危险性作业,规范临时作业的审批管理,防止发生安全事故。
JProfiler学习笔记一、安装JProfiler从/下载5.1.2并申请试用序列号二、主要功能简介1.内存剖析Memory profilerJProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。
所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。
∙所有对象显示类或在状况统计和尺码信息堆上所有对象的包。
你可以标记当前值并显示差异值。
∙记录对象 Record objects显示类或所有已记录对象的包。
你可以标记出当前值并且显示差异值。
∙分配访问树 Allocation call tree显示一棵请求树或者方法、类、包或对已选择类有带注释的分配信息的J 2EE组件。
∙分配热点 Allocation hot spots显示一个列表,包括方法、类、包或分配已选类的J2EE组件。
你可以标注当前值并且显示差异值。
对于每个热点都可以显示它的跟踪记录树。
2.堆遍历Heap walker在JProfiler的堆遍历器(Heap walker)中,你可以对堆的状况进行快照并且可以通过选择步骤下寻找感兴趣的对象。
堆遍历器有五个视图:∙类 Classes显示所有类和它们的实例。
∙分配 Allocations为所有记录对象显示分配树和分配热点。
∙索引 References为单个对象和“显示到垃圾回收根目录的路径”提供索引图的显示功能。
还能提供合并输入视图和输出视图的功能。
∙数据 Data为单个对象显示实例和类数据。
显示一个对已记录对象的解决时间的柱状图。
3.CPU剖析CPU profilerJProfiler 提供不同的方法来记录访问树以优化性能和细节。
线程或者线程组以及线程状况可以被所有的视图选择。
所有的视图都可以聚集到方法、类、包或J2EE组件等不同层上。
CPU视图部分包括:∙访问树 Call tree显示一个积累的自顶向下的树,树中包含所有在JVM中已记录的访问队列。
Jprofiler 安装部署启动对于大部分应用,我们都是需要跟踪远程服务器上的程序运行情况,包括gc,内存使用,线程状态等。
所以我们需要在两台机器上安装Jprofiler,一个是客户端,就是开发人员的本机,进行数据的展示。
另一个就是要远程监控的程序的服务器,对运行的程序进行性能监控和分析并将数据传给客户端。
Jprofier官方下载地址:/download/jprofiler/files.html在linux上下载tar.gz压缩包就可以了在windows机器上运行的工具需要注册激活(在网上搜或者找熟人)一定要注意,服务端和客户端的运行版本要一致,就算服务端版本是6.2.3,客户端版本是6.0.2也不行,小版本也要一致,否则报错说版本错误,连不上去,目前咱们使用 6.2.4版本的在共享\\192.168.11.49\development02\软件\jprofiler上可以拿到。
首先安装jprofiler,客户端(本机)、服务器端都得装,服务器端装linux版本,解压tar.gz 包即可windows安装Jprofiler填写安装序列号选择本地eclipse的安装版本点击“Integrate”按钮选择本地eclipse的安装目录完成后重启eclipse,可以看到Jprofiler的配置Eclipse启动application程序方法一、即可启动Jprofiler,注意不是戴❀那个Profile As 方法二、添加虚拟机运行参数为:-agentpath:C:\PROGRA~1\JPROFI~1\bin\windows\jprofilerti.dll=port=8849,nowait点击debug后启动Jprofiler->ctrl+n新建session注意主机是127.0.0.1;监控端口是8849Jprofiler监控远程application部署步骤配置远程application的监控1、在本地启动JProfiler,快捷键ctrl+o或者点击菜单Start Center,如下图,点击“New Remote Integration”:2、有2个选项,On this computer和On a remote computer,这里选择监控远程机器n a remote computer,同时在latform of the remote computer选项选择远程机器对应的操作系统,然后点击next,如下图:3、选择远程机器的java(java安装版本和产商)运行环境,这里选择的是JVM Vendor:Sun Version:1.6.0 Mode:hotspot 如果远程机器是64位系统,务必也勾上64 bit JVM,然后点击next4、Wait for 。
目录1.总述 (2)1.1JProfiler安装配置和使用说明 (2)1.2JProfiler安装准备 (2)1.3安装介质 (2)1.4序列号 (3)2.JProfiler Windows端安装与配置 (3)2.1安装 (3)2.2运行JProfiler并进行配置 (3)2.3Linux上Weblogic Server配置 (5)3.案例分析 (8)3.1问题描述 (8)3.2Web应用服务器的物理部署 (9)3.3Web应用服务器启动脚本中的内存参数 (9)3.4Web应用服务器的重要部署参数 (9)3.5实例详细分析 (10)4.总结 (26)1.总述在中间件应用服务器的整体调优中,有关于等待队列、执行线程,EJB池以及数据库连接池和Statement Cache方面的调优,这些都属于系统参数方面的调优,本文主要从另外一个角度,也就是从应用的角度来解决中间件应用服务器的内存泄露问题,从这个角度来提高系统的稳定性和性能。
1.1JProfiler安装配置和使用说明JProfiler是一个全功能的Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。
JProfiler直觉式的GUI让你可以找到性能瓶颈、抓出内存泄漏(memory leaks)、并解决多线程的问题。
通过它可以对heap walker作资源回收器的root analysis,可以轻易找出内存漏失;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结(finalization)队列的对象都会被移除。
1.2JProfiler安装准备1.3安装介质Jprofiler5.1.4目前支持的操作系统包括:aix-ppc、aix-ppc64、hpux-parisc、hpux-parisc64、linux-x64、linux-x86、windows、windows-64。
安装介质见附件(一)。
RED5将所有的应用程序都放在RED5根目录下的”webapps“目录。
你需要为所创建的程序在webapps目录下添加相应的目录。
在你的应用程序目录里应该有一个名为”WEB-INF“的目录,用来存放你的程序的配置文件。
在”doc/templates/myapp“目录有一个模板,可以用来帮你完成建立程序的初始工作。
RED5启动的时候,在”webapps”目录的程序文件都是搜索”WEB-INF”的目录下的配置文件来完成配置的。
最主要的配置文件是”web.xml”。
这个文件里包含了以下参数:globalScope:指定全局作用范围1.<context-param>2.<param-name>globalScope</param-name>3.<param-value>default</param-value>4.</context-param>contextConfigLocation:指定配置handler的文件的位置。
这些配置文件描述了客户端加入/离开的动作触发后调用的处理方法,作用范围。
在描述的时候可以使用通配符来描述多个文件:1.<context-param>2.<param-name>contextConfigLocation</param-name>3.<param-value>/WEB-INF/red5-*.xml</param-value>4.</context-param>locatorFactorySelector:程序的根上下文,通常是”red5.xml”1.<context-param>2.<param-name>locatorFactorySelector</param-name>3.<param-value>red5.xml</param-value>4.</context-param>parentContextKey:父级上下文,通常是”default.context”1.<context-param>2.<param-name>parentContextKey</param-name>3.<param-value>default.context</param-value>4.</context-param>log4jConfigLocation:日志配置文件的位置1.<context-param>2.<param-name>log4jConfigLocation</param-name>3.<param-value>/WEB-INF/log4j.properties</param-value>4.</context-param>webAppRootKey:程序的全局唯一名1.<context-param>2.<param-name>webAppRootKey</param-name>3.<param-value>/myapp</param-value>4.</context-param>对于每一个Handler配置文件最少需要有三个beanContext:用来影射路径到某个作用范围、搜索服务和Handler,它有一个保留的名字”web.context”。
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需要使用可管理的模式启动。
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安装配置手册本地与远程安装同版本的jprofiler。
以本地Windows操作系统,远程AIX操作系统为例,详细介绍安装配置步骤。
本次测试使用的均是jp6版本。
一、安装Jprofiler服务端一般情况下,Jprofiler服务端布署在远程服务器上,在这里Jprofiler运行环境为Aix环境,因此需要下载Unix版本的安装文件jprofiler_unix_X_X_X.sh,本次测试使用的是jprofiler6免安装版(没有下载到jp6的安装版本),为了介绍安装版如何安装,此处以jp5为例详细介绍服务端具体安装操作步骤,如下1.把jprofiler_linux_5_1_4.sh 上传到服务器/home/ahcard路径下2.赋权限chmod 777 jprofiler_linux_5_1_4.sh再执行sh jprofiler_linux_5_1_4.sh3.安装程序需要确认是否安装软件,直接回车(o)4.是否默认安装还是定制安装,此处直接回车,选择默认安装,程序默认安装在home/ahcard/jprofiler5目录下5.然后是Jprofiler的条款协议等,直接一路回车(Enter),部分图片省略6.是否接受条款协议,17.确认安装路径等等,安装开始,需等待一段时间8. 安装完成,是否启动jprofiler,此时选择n,因为此处jprofiler是随着java启动脚本启动的,因此暂不启动9. 安装完成后,可以看到/home/ahcard/路径下jprofiler5文件,里面有aix-ppc64文件夹。
本次使用的是免安装版的jprofiler6,直接将JProfiler6的文件夹上传到该路径下,和安装完成的jprofiler5一样二、安装Jprofiler客户端一般情况下,在windows环境通过Jprofiler客户端连接远程服务端进行监控操作,因此还需要安装Jprofiler客户端程序,下载Jprofiler windows版本jprofiler_windows_6_2_4.exe,windows环境安装步骤相对简单,此处省略,需要说明的是,windows版本可能需要注册码三、配置Jprofiler客户端Jprofiler客户端软件安装完成后,需要配置客户端连接远程Jprofiler服务端,具体详细配置如下:1.新建session2. 被监控的应用位置,选择远程及操作系统AIX3.选择JVM版本,(JVM拥有者:IBM,版本号:1.5.0,模式:默认第一个)4. 选择连接方式:第一个(java应用启动时会一直等待jprofiler连接,连接成功后才会执行后续操作)第二个(java应用无须等待jprofiler连接),第三个(此模式为离线模式,生成相关记录文件事后分析);此处选择第一个。
Jprofiler监控远程application server部署步骤:首先安装jprofiler,客户端、服务器端都得装,服务器端装linux版本,到官方网下载解压即可下面以JProfiler+resin为例,来说明JProfiler对远程application server监控的配置方法:1、选择An application server,locally or remotely,如下图:2、选择服务器,这里选择Caucho Resin 3.1如下图:3、有2个选项,On this computer和On a remote computer,这里选择监控远程机器n a remote computer,同时在latform of the remote computer选项选择远程机器对应的操作系统,然后点击next,如下图:4、选择远程机器的java(java安装版本和产商)运行环境,这里选择的是JVM Vendor:BEA Version:1.6.0 Mode:default 如果远程机器是64位系统,务必也勾上64 bit JVM,然后点击next5、Wait for 。
为了在开发环境中获取监控的信息,它将等待远程计算机上的Jprofile GUI 启动,并和本机建立连接,这种方式比较便于修改jprofiler的配置信息。
这里选择startup immediately,connect……………..6、填写远程机器的地址,如下图:7、填写远程机器JProfiler的安装地址,我这里是/usr/local/jprofiler6,如下图:8、选择远程机器读取配置文件的位置,这里是/usr/local/jprofiler6/config,同时手工维护配置文件的改动,选择manual同步。
同步方式:Manual synchronization;copy to diretory;execute command:提供三种同步方式,这里选择的是第一个手工同步,如下图:9、选择启动脚本点击Next进入“启动脚本选择”对话框,输入resin.conf路径,远程的可以将resin.conf下载到本地,然后选择。
Jprofiler监控远程application server部署步骤:首先安装jprofiler,客户端、服务器端都得装,服务器端装linux版本,到官方网下载解压即可下面以JProfiler+resin为例,来说明JProfiler对远程application server监控的配置方法:1、选择An application server,locally or remotely,如下图:2、选择服务器,这里选择Caucho Resin 3.1如下图:3、有2个选项,On this computer和On a remote computer,这里选择监控远程机器n a remote computer,同时在latform of the remote computer选项选择远程机器对应的操作系统,然后点击next,如下图:4、选择远程机器的java(java安装版本和产商)运行环境,这里选择的是JVM Vendor:BEA Version:1.6.0 Mode:default 如果远程机器是64位系统,务必也勾上64 bit JVM,然后点击next5、Wait for 。
为了在开发环境中获取监控的信息,它将等待远程计算机上的Jprofile GUI 启动,并和本机建立连接,这种方式比较便于修改jprofiler的配置信息。
这里选择startup immediately,connect……………..6、填写远程机器的地址,如下图:7、填写远程机器JProfiler的安装地址,我这里是/usr/local/jprofiler6,如下图:8、选择远程机器读取配置文件的位置,这里是/usr/local/jprofiler6/config,同时手工维护配置文件的改动,选择manual同步。
同步方式:Manual synchronization;copy to diretory;execute command:提供三种同步方式,这里选择的是第一个手工同步,如下图:9、选择启动脚本点击Next进入“启动脚本选择”对话框,输入resin.conf路径,远程的可以将resin.conf下载到本地,然后选择。
jprofilerlinux上的安装和使⽤⼀:服务器端下载与安装
下载地址 wget /jprofiler/jprofiler_linux_9_2.sh
增加执⾏权限 chmod +x jprofiler_linux_9_2.sh
按照提⽰安装就⾏
⼆:windows端,直接下载9.2版本,安装就⾏
序列码如下:
L-Larry_Lau@#23874-hrwpdp1sh1wrn#0620
L-Larry_Lau@#36573-fdkscp15axjj6#25257
L-Larry_Lau@#5481-ucjn4a16rvd98#6038
L-Larry_Lau@#99016-hli5ay1ylizjj#27215
L-Larry_Lau@#40775-3wle0g1uin5c1#0674
都安装好后开始配置
选择Profile an application server,locally or remotely
选择要分析的tomcat对应的版本
选择tomcat所在的系统版本
选择jdk以及版本
选择连接模式
填写远程服务器地址
选择jprofile在服务器安装的⽬录
选择tomcat启动脚本在本地存放位置,这个需要在服务器上下载下来
配置jprofile连接端⼝,远程服务器给windows jprofile客户端连接的端⼝
通过jprofile⽣成tomcat启动脚本
稍后连接
这时,会在startup.sh的同级⽬录⽣成startup_jprofiler.sh,将该⽂件上传到tomcat/bin下,然后执⾏./startup_jprofiler.sh启动tomcat,启动完毕后,直接⽤windows客户端连接
这样就OK了。
JProfiler在red5上的安装和使用
服务器端:
操作系统:linux redhat5
应用服务器:tomcat6
java虚拟机版本:java version "1.6.0_19"
jprofiler版本:jprofiler_linux_4_3_2_with_jre.rpm
客户端:
操作系统:Windows Xp SP2
Jprofiler4.3.2 for windows(安装包:
jprofiler_windows_4_3_2_with_jre.exe)
安装:
Windows下安装:
在windows下安装全部为默认就好
服务器安装:
1.把jprofiler cp 到服务器上
2.如果安装包为.rpm,先执行apt-get install rpm;
3.安装jprofiler:rpm –ivh jprofiler_linux_4_3_2.rpm
4.如果安装包为.sh,直接执行就行(没有图形界面也用silence安装,有提示)Windows端配置
1.打开本地jprofiler
1-1 图1-1使用向导,我们可以选择Cancel
2.
1-2
选择session->Integration wizards->New Remote Integration 3.
1-3
1)The profiled application is located选择On a remote computer
2)Platform of the remote computer选择Linux X86/AMD64
3)Next
1-4 Remote address中写入所要监控的服务器IP地址
5
1-5 Installation directory中写入jprofiler在服务器中的路径
1)
1-6-1 2)JVM Vendor选择Sun
3)Next
JProfiler port :写入8849
8
1-8 选择Wait for a connection from the JProfiler GUI
1-9
服务器端配置
---------------------------------------------------------------------------------------------
把windows端tomcat bin目录中生成的startup_jprofiler.sh文件,上传到linux服务器端
tomcat bin目录中
把windows C:\Documents and Settings\lqw\.jprofiler4目录下的config.xml文件,上传到服务器端/opt/jprofiler4目录下。
把服务器端tomcat bin目录下的startup_jprofiler.sh修改为可执行文件:
chmod 777 startup_jprofiler.sh
启动服务器端tomcat bin目录下的startup_jprofiler.sh
出现下列信息,表示配置成功
[root@localhost bin]# ./startup_jprofiler.sh
Using CATALINA_BASE: /root/software/tomcat6
Using CATALINA_HOME: /root/software/tomcat6
Using CATALINA_TMPDIR: /root/software/tomcat6/temp
Using JRE_HOME: /usr/java/jdk1.6.0_19
Using CLASSPATH: /root/software/tomcat6/bin/bootstrap.jar
JProfiler> Protocol version 23
JProfiler> Using JVMTI
JProfiler> 32-bit library
JProfiler> Don't wait for frontend to connect.
JProfiler> Using config file /opt/jprofiler4/config.xml (id: 114)
JProfiler> Listening on port: 8849.
JProfiler> Native library initialized
JProfiler> Using dynamic instrumentation
JProfiler> Time measurement: elapsed time
JProfiler> CPU profiling enabled
JProfiler> Hotspot compiler enabled
JProfiler> Starting org/apache/catalina/startup/Bootstrap ...
打开windows端,开始监控,运行结果
Session---》open session
找到刚刚配置的session ,open
点击OK进入
功能简介
1.内存剖析Memory profiler
JProfiler 的内存视图部分可以提供动态的内存使用状况更新视图和显示
关于内存分配状况信息的视图。
所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。
∙所有对象
显示类或在状况统计和尺码信息堆上所有对象的包。
你可以标记当前
值并显示差异值。
∙记录对象 Record objects
显示类或所有已记录对象的包。
你可以标记出当前值并且显示差异值。
∙分配访问树 Allocation call tree
显示一棵请求树或者方法、类、包或对已选择类有带注释的分配信息
的J2EE组件。
∙分配热点 Allocation hot spots
显示一个列表,包括方法、类、包或分配已选类的J2EE组件。
你可以
标注当前值并且显示差异值。
对于每个热点都可以显示它的跟踪记录
树。
2.堆遍历Heap walker
在JProfiler的堆遍历器(Heap walker)中,你可以对堆的状况进行快照并且可以通过选择步骤下寻找感兴趣的对象。
堆遍历器有五个视图:
∙类 Classes
显示所有类和它们的实例。
∙分配 Allocations
为所有记录对象显示分配树和分配热点。
∙索引 References
为单个对象和“显示到垃圾回收根目录的路径”提供索引图的显示功
能。
还能提供合并输入视图和输出视图的功能。
∙数据 Data
为单个对象显示实例和类数据。
∙时间 Time
显示一个对已记录对象的解决时间的柱状图。
3.CPU剖析CPU profiler
JProfiler 提供不同的方法来记录访问树以优化性能和细节。
线程或者线程组以及线程状况可以被所有的视图选择。
所有的视图都可以聚集到方法、类、包或J2EE组件等不同层上。
CPU视图部分包括:
∙访问树 Call tree
显示一个积累的自顶向下的树,树中包含所有在JVM中已记录的访问队
列。
JDBC,JMS和JNDI服务请求都被注释在请求树中。
请求树可以根据
Servlet和JSP对URL的不同需要进行拆分。
∙热点 Hot spots
显示消耗时间最多的方法的列表。
对每个热点都能够显示回溯树。
该
热点可以按照方法请求,JDBC,JMS和JNDI服务请求以及按照URL请
求来进行计算。
∙访问图 Call graph
显示一个从已选方法、类、包或J2EE组件开始的访问队列的图。
4.线程剖析Thread profiler
对线程剖析,JProfiler提供以下视图:
∙线程历史 Thread history
显示一个与线程活动和线程状态在一起的活动时间表。
∙线程监控 Thread monitor
显示一个列表,包括所有的活动线程以及它们目前的活动状况。
∙死锁探测图表 Deadlock Detection
显示一个包含了所有在JVM里的死锁图表。
∙目前使用的监测器 Current monitor useage
显示目前使用的监测器并且包括它们的关联线程。
∙历史检测记录 History usage history
显示重大的等待事件和阻塞事件的历史记录。
∙监测使用状态 Monitor usage statistics
显示分组监测,线程和监测类的统计监测数据。
5.VM 遥感勘测技术VM telemetry
观察JVM的内部状态,JProfiler提供了不同的遥感勘测视图,如下所示: ∙堆 Heap
显示一个堆的使用状况和堆尺寸大小活动时间表。
∙记录的对象 Recorded objects
显示一张关于活动对象与数组的图表的活动时间表。
∙垃圾回收 Garbage collector
显示一张关于垃圾回收活动的活动时间表。
∙类 Classes
显示一个与已装载类的图表的活动时间表。
∙线程 Threads
显示一个与动态线程图表的活动时间表。
金皮鼠。