当前位置:首页 > 开发 > 开源软件 > 正文

JConsole & JVisualVM远程监视Webphere服务器JVM

发表于: 2015-07-14   作者:Kai_Ge   来源:转载   浏览:
摘要:     JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。   使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。   首先我们看WAS服务器端的配置.   1、登录was控制台https://10.4.119.18

    JConsole是JDK里自带的一个工具,可以监测Java程序运行时所有对象的申请、释放等动作,将内存管理的所有信息进行统计、分析、可视化。我们可以根据这些信息判断程序是否有内存泄漏问题。

  使用JConsole工具来分析WAS的JVM问题,需要进行相关的配置。

  首先我们看WAS服务器端的配置.

  1、登录was控制台https://10.4.119.18:9043/ibm/console/,找到自己的应用程序服务器---java和进程管理---进程定义--JAVA虚拟机,然后配置 通用JVM 参数 :

  加入以下jvm参数:-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote

  注意:等号后面一定要保留空格,否则会报错。 

  2、修改/usr/IBM/WebSphere/AppServer/java/jre/lib/management下的management.properties文件,在最后加入

  com.sun.management.jmxremote.port=8999

  com.sun.management.jmxremote.authenticate=false

  com.sun.management.jmxremote.ssl=false

  注意:先执行netstat -ano | grep 8999,查看这个端口是否被使用。另外注意防火墙对8999端口的配置,要放开,否则远程机器可能连接不上.

  3、设置jconsole远程登录的用户名和密码

  在/usr/IBM/WebSphere/AppServer/java/jre/lib/management下有个jmxremote.password.template文件,在最后面加入你要设置的用户名和密码

  root root@123 (用户名、密码,可以随意修改)

  4、在was控制台上停掉自己的应用程序服务器,然后重启。

  WINDOWS客户端的设置

  1、进入JAVA所在的BIN目录 

  2、输入IP、端口号、用户名和密码进行远程连接 

  3、监控界面可以看到内存、类、线程、CPU的使用情况。 

  使用这个工具再配合JCA工具就能很方便的分析内存溢出问题。

  Java VisualVM也是JDK的一个集成的分析工具,自从JDK 6 Update 7以后已经作为Sun的JDK的一部分。VisualVM可以监控应用程序的性能和内存占用情况、监控应用程序的线程、进行线程转储(Thread Dump)或堆转储(Heap Dump)、跟踪内存泄漏、监控垃圾回收器、执行内存和CPU分析,保存快照以便脱机分析应用程序;同时它还支持在MBeans上进行浏览和操作。 VisualVM自身要在JDK6以上的运行,但是JDK1.4以上版本的程序也能被它监控。

  启动方法:进入JAVA_HOME所在的bin目录,运行jvisualvm.exe就可以启动VisualVM

  远程连接WAS服务器的话,需要添加JMX连接方式就可以了 

  内存溢出的原因有很多种,比如:

  1、数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象;

  2、虚拟机不回收内存(内存泄漏);

  说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。 内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见。

  内存溢出的一般解决方法:

  一个是优化程序代码,如果业务庞大,逻辑复杂,尽量减少全局变量的引用,让程序使用完变量的时候释放该引用,能够让垃圾回收器回收和释放资源。

  二就是物理解决,增大物理内存,然后通过-Xms256m -Xmx2048m 的修改来增大内存空间。

JConsole & JVisualVM远程监视Webphere服务器JVM

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
以对tomcat的性能监控为例,远程配置tomcat,在本地实现对tomcat资源使用的监控。 1.打开tomcat,编
■検測されたJVMのパラメータは、下記である。 -Dcom.sun.management.jmxremote.port=ポート -Dcom.
Java VisualVM -- JDK自带的强大性能监测工具 这里给出了另一种,可以通过jdk下bin目录下的jconsole
VisualVM介绍 VisualVM是集成了多个JDK命令工具的一个可视化工具,它主要用来监控JVM的运行情况,可
为了解决内存溢出的问题,会用到一些监视内存的工具,jconsole这个工具在jdk1.6自带了 这个工具可以
Java 5.0采用JMX方式提供了一系列监视和管理虚拟机的API,随SDK一起发布的JConsole则是采用这些API
JConsole JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。可以轻松地使
最近更新列表 1.IBM的aix中安装jdk(7月21更新) 2.Linux(CentOS)中安装jdk (7月21更新) 3.Linux(Cent
最近更新列表 1.IBM的aix中安装jdk(7月21更新) 2.Linux(CentOS)中安装jdk (7月21更新) 3.Linux(Cent
JVisualVM中提供了jconsole的插件,默认把它安装好后,发现不知道怎么用,打开jconsole Tab发现如下
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号