zoukankan      html  css  js  c++  java
  • 使用VisualVm,JMX方式和jstate方式调用远程环境,查看JVM情况。

    目录:

    一.远程JVM添加账号

    二.远程java项目启动时增加监听接口

    三.本地VisualVm连接远程JVM

    四.jstate方式调用

    五.JVM部分参数介绍

    一.远程JVM添加账号

      我们找到服务器的 JAVA jre 的地址:

    java -verbose

      进入management 目录

      里面有这几个文件

       复制一份 jmxremote.password 文件

    cp -r jmxremote.password.template jmxremote.password

      准备修改改文件内容,注意如果文件没有修改权限记得加上

    chmod 600 jmxremote.password
    vim jmxremote.password

      增加 一个账号 和密码,用空格隔开。

      

       修改 jmxremote.access文件

    vim jmxremote.access

      拷贝一份配置,把名字改成自己的账号。

      

    二.远程java项目启动时增加监听接口

      启动Java项目的时候,添加JVM的参数。

    -Dcom.sun.management.jmxremote.port=8091
    -Dcom.sun.management.jmxremote.ssl=false
    -Dcom.sun.management.jmxremote.authenticate=false
    -Djava.rmi.server.hostname=11.11.11.11

      四行配置分别是(远程调用请求的端口、是否要求ssl连接、是否认证、服务器的远程ip地址

      如果不清楚自己的远程ip地址 可以执行下面的命令。

    curl ifconfig.me

    三.本地VisualVm连接远程JVM

      打开VisualVm。添加远程主机 -- 输入远程 IP 地址 -- 确认。

       输入 项目启动时配置的 端口,JVM 添加的 管理员账号。确定。双击点开就可以看到JVM的运行情况了。

    四.jstate方式调用

       在JDK的 bin 目录下增加 jstatd.all.policy 文件。内容如下,地址改为自己的地址。

    [root@localhost /]# cd /usr/local/jdk1.8.0_181/bin/
    [root@localhost bin]# vim jstatd.all.policy
    
    grant codebase "file:/usr/local/jdk1.8.0_181/lib/tools.jar" {
       permission java.security.AllPermission;
    };

      在 bin 目录下,执行以下命令

    jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=11.11.11.11 -p 8090

     

    五.JVM部分参数介绍

      传送门

  • 相关阅读:
    利用Clojure统计代码文件数量和代码行数
    Workflow:添加工作流存储功能
    MongoDB:最简单的增删改查(Oops,可能太简单了)
    《WF in 24 Hours》读书笔记
    推荐一个学习python的网站
    Inter系列处理器名称浅析
    [Android1.5]TextView跑马灯效果
    Code::Blocks 的配色方案
    PuTTY + Xming 远程使用 Linux GUI
    Linux下查看文件和文件夹大小
  • 原文地址:https://www.cnblogs.com/zhaww/p/12760935.html
Copyright © 2011-2022 走看看