`

jvisualvm结合jstatd进行远程监控

    博客分类:
  • java
 
阅读更多

jvisualvm是Jdk自带的,具体点,据说是jdk1.6-07后加到jdk中的。本地监控很简单,在JAVA_HOME/bin中打开jvisualvm即可,所有本机的java程序会自动列出来。我们来说下远程监控的问题。

       

      具体步骤如下,

       1. 启动远端jstatd.

           1.1 配置[b]java[/b]安全访问,将如下的代码存为文件 jstatd.all.policy ,但要放到JAVA_HOME/bin中,其内容如下,

            grant codebase"file:${java.home}/../lib/tools.jar"{ permission java.security.AllPermission; };

           1.2 进入到JAVA_HOME/bin中,执行./jstatd
  ./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.0.23(liunx本机ip)

 

2.打开本地的jvisualvm, 右键Remort,选择 "Add Remort Host...",在弹出框中输入你的远端IP,比如192.168.0.23. 连接成功后如图,


       顺便解释下Heap跟PermGen的区别, 一般而言,PerGen放的是类的定义;而Heap里面放的是类的实例;所以一般程序稳定运行后,PermGen基本保持不变,要变也只会增加,因为GC 只会扫描heap中的实例;而Heap变化较大,OutOfMemory一般也是Heap不够了。

 T omcat中配置

  下面我们为54 服务器的 tomcat 配置 jvm 启动参数。 tomcat catalina.sh 中添加如下参数:

java代码  收藏代码
  1. JAVA_OPTS=’-Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.1.54  其他配置’

    注:1. -Dcom.sun.management.jmxremote.port :这个是配置远程 connection 的端口号的,要确定这个端口没有被占用

    2. -Dcom.sun.management.jmxremote.ssl=false 指定了 JMX 是否启用 ssl

    3. -Dcom.sun.management.jmxremote.authenticate=false   指定了JMX 是否启用鉴权(需要用户名,密码鉴权)

       2,3两个是固定配置,是 JMX 的远程服务权限的

    4. -Djava.rmi.server.hostname :这个是配置 server IP 的 

  2. 连接成功,现在我们可以远程监控服务器性能,可以配合 jmeter 进行了一个长时间的加压,在加压过程中重点关注了系统资源的使用情况。

分享到:
评论

相关推荐

    x86_64汇编调试程序初步

    掌握此基础,就可以用来修改无源代码的程序等,比如希望jstatd在指定的端口上监听,而不是一个值为0的随机端口号,请参见《防火墙内JVisualVM连接jstatd解决方案》。

    ejstatd一个增强型的jstatd

    jstatd启动后会打开两个端口,其中一个端口可通过参数“-p”指定,如果不指定默认为1099,另一个是一个随机端口,不能参数指定。在防火墙环境使用不便,ejstatd是jstatd的增强版本,可指定端口,方便防火墙环境中...

    jstatd-client:jstatdJStatRemoteHost的RMI客户端

    jstatd-client 用于jstatd / JStatRemoteHost的RMI客户端

    深入浅析jcmd:JDK14中的调试神器

    主要介绍了jcmd:JDK14中的调试神器,本文给大家提到了jcmd的语法,通过实例列举的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

    Troubleshooting Guide for Java

    最新java应用问题调试指南, 包含调试工具使用教程: • Diagnostic Tools Overview • What Are Java Flight Recordings • How to Produce a Flight Recording • Inspect a Flight Recording ...• The jstatd Daemon

    jdk-9.0.1_doc-all 最新版

    Defines the jstatd tool for starting a daemon for the jstat tool to monitor JVM statistics remotely. jdk.localedata Provides the locale data for locales other than US locale. jdk.management Defines ...

    Windouws 64 位Tomcat7.0.40 + 64位jdk1.7.0u21 绿色版.part1

    │ │ jvisualvm.exe │ │ keytool.exe │ │ kinit.exe │ │ klist.exe │ │ ktab.exe │ │ msvcr100.dll │ │ native2ascii.exe │ │ orbd.exe │ │ pack200.exe │ │ policytool.exe │ │ rmic.exe │ ...

Global site tag (gtag.js) - Google Analytics