`
wenlongsust
  • 浏览: 71766 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

JConsole & JVisualVM远程监视Websphere服务器JVM的配置方法

 
阅读更多

原文链接:http://xjsunjie.blog.51cto.com/999372/1331880/


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|grep8999,查看这个端口是否被使用。另外注意防火墙对8999端口的配置,要放开,否则远程机器可能连接不上.

3、设置jconsole远程登录的用户名和密码在/usr/IBM/WebSphere/AppServer/java/jre/lib/management下有个jmxremote.password.template文件,在最后面加入你要设置的用户名和密码
rootroot@123(用户名、密码,可以随意修改)

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

WINDOWS客户端的设置
1、进入JAVA所在的BIN目录

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


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


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


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

启动方法:进入JAVA_HOME所在的bin目录,运行jvisualvm.exe就可以启动VisualVM远程连接WAS服务器的话,需要添加JMX连接方式就可以了


内存溢出的原因有很多种,比如:
1、数据量过于庞大;死循环;静态变量和静态方法过多;递归;无法确定是否被引用的对象;
2、虚拟机不回收内存(内存泄漏);说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。
内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见。

内存溢出的一般解决方法:
一个是优化程序代码,如果业务庞大,逻辑复杂,尽量减少全局变量的引用,让程序使用完变量的时候释放该引用,能够让垃圾回收器回收和释放资源。
二就是物理解决,增大物理内存,然后通过-Xms256m-Xmx2048m的修改来增大内存空间。

分享到:
评论

相关推荐

    Cubic java应用诊断工具.rar

    局限:JConsole只能监视本地JVM,无法监视远程JVM。 JVisualVM 作用:JVisualVM是一个多合一的Java应用程序监视和管理工具,可以通过它监视和管理本地和远程JVM。 优势:JVisualVM可以监视和管理本地和远程JVM,...

    jconsole 配置和JVM内存检测工具介绍

    jvm检测工具,jconsole工具介绍,其他同类工具介绍

    JConsole_远程监控Tomcat_ricky

    一旦配置正确,JConsole 可以为用户提供有关被监控 JVM 的多种信息,包括但不限于内存使用情况、线程状态、类加载统计信息以及 MBean(Managed Bean)的状态等。 自 JDK 5 开始,JConsole 已经成为标准工具集的一...

    JVisualVM进行性能分析中,jconsole需要的jtop插件

    JVisualVM不仅能够本地运行,还可以远程连接到其他正在运行的Java进程,为开发者提供了全面的诊断能力。 jconsole是另一个Java性能监测工具,它提供了一个图形用户界面来显示各种性能和资源使用情况。然而,...

    jconsole远程监控配置手册(经典)

    本文档旨在提供一份详细的jconsole远程监控配置指南,适用于需要对生产环境中的Tomcat应用服务器进行远程监控的场景。通过本指南,用户可以了解到如何正确配置Tomcat服务器以支持远程监控功能,以及如何在客户端上...

    JVM监控工具使用入门

    本文将详细介绍JDK自带的一些强大的JVM监控工具,包括jconsole、jvisualvm以及Oracle JRockit Mission Control (JRMc),并指导如何利用这些工具进行本地和远程JVM监控。 #### 监控工具介绍 ##### jconsole ...

    xmanage远程打开jconsole

    总结来说,通过xmanage远程打开Jconsole是一种有效的解决Jconsole远程连接问题的方法,它利用了X Window协议和环境变量DISPLAY的特性,使得我们可以在本地机器上直观地监控远程服务器上的Java应用。然而,实施这一...

    jvisualvm插件VisualVM-JConsole依赖包JTop.jar

    它的存在,体现了社区的共享精神,使得开发者无需复杂的配置就能享受到更强大的JVM监控功能。 **JTop.jar的用途** JTop.jar的核心功能是对JVM进行实时的、详细的性能监控。它能够提供关于CPU使用率、内存分配、...

    使用Jconsole对java的内存使用情况(JVM)进行监控参照.pdf

    然后,Jconsole将连接到远程服务器的JVM,并显示Java应用程序的各种信息,包括内存使用情况、活动线程数量、类装载的数量、MBeans的状态、虚拟机的各种信息等。 四、Jconsole的使用 Jconsole提供了多种功能,包括...

    jconsole配置

    Jconsole是一款强大的Java应用程序监控工具,它包含在JDK的bin目录中,可用于实时监控本地或远程JVM的性能和资源消耗。通过提供丰富的图表和可视化界面,Jconsole可以帮助开发者和系统管理员深入了解Java应用程序的...

    《JVM从入门到入魔》笔记.pdf

    3:JVM内存调优:JVM参数【标准参数、-X参数、-XX参数等】+常用命令【jps、jinfo、jstat、jstack、jmap】+常用工具【jconsole、jvisualvm、Arthas、MAT】+性能优化及总结+高并发场景分析+JVM性能优化指南。

    java jvm Jconsole

    ### Java JVM JConsole详解 #### 一、JConsole简介与基本使用 JConsole是一个由Oracle提供的免费工具,作为Java Development Kit (JDK)的一部分被包含其中。它是一个基于Java Management Extensions (JMX)的图形...

    【IT十八掌徐培成】Java基础第26天-02.jvm-young gen-old gen-eden-sur-jvisualvm-jconsole.zip

    - **JConsole**:同样作为Java的内置工具,JConsole提供了一个GUI界面,用于监控Java应用程序的性能和资源使用情况,支持连接本地或远程的Java进程,并能查看JVM配置信息,进行内存和线程分析。 通过理解JVM的工作...

    jconsole.jar下载

    然后在jconsole中输入远程JVM的地址和端口进行连接。 四、jconsole.jar在实际应用中的价值 jconsole.jar对于Java开发者和运维人员来说是不可或缺的工具。它能够帮助我们: 1. **诊断性能瓶颈**:通过实时监控CPU...

    jconsole使用手册

    2. 需要配置JVM参数,否则无法连接到远程服务器。 3. 需要具备一定的Java知识和性能监控经验,否则难以正确使用。 jconsole是一个功能强大且实用的性能监控工具,能够帮助开发者和管理员实时监控Java应用程序的运行...

    JConsole监控JVM

    JConsole通过JMX(Java Management Extensions)技术来实现远程管理和监控,允许开发者和运维人员实时查看JVM的内存使用、线程状态、类加载、MBeans以及虚拟机详细信息。 1. **概述**: - **堆内存**:显示JVM堆...

    jmx-jvm配置

    1. **JConsole**: Java自带的GUI工具,可以直接连接到本地或远程的JMX服务器。 2. **VisualVM**: Oracle提供的多合一Java应用性能分析工具,支持JMX连接。 3. **JMXTerm**: 命令行工具,用于交互式地与JMX服务器...

Global site tag (gtag.js) - Google Analytics