你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
nccloud
1、安装visualvm
下载地址:https://visualvm.github.io/download.html
2、服务端配置,需要启动 jstatd服务,暴露端口,支持从本地的visualvm 连接到 jstatd服务所在主机
jstatd是一个rmi的server应用,用于监控jvm的创建和结束,并且提供接口让监控工具(如visualvm)可以远程连接到本机的jvms 。注意是jvms,就是说运行jstatd命令后可以用监控工具监控本用户(运行jstatd命令的用户)所有已经启动的java程序。
1、在服务器上新建文件,命名为jstatd.all.policy
内容为:
grant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission; };
注:需要替换${java.home}/../为实际的$JAVA_HOME目录
2、在服务器上jstatd.all.policy所在目录下执行下面的命令
$JAVA_HOME/bin/jstatd -J-Djava.security.policy=jstatd.all.policy -p 端口-J-Djava.rmi.server.hostname=IP地址 -J-Djava.rmi.server.logCalls=true
其中jstatd 要执行当前系统可用的,一般$JAVA_HOME下会有
jstatd.all.policy 如果是在该文件当前目录执行,直接如上引入即可,否则需要填写jstatd.all.policy 的绝对地址
-p 端口 为指定 jstatd 的监听端口,后面visualvm 连接 jstatd远程就要通过该端口
IP地址为指定 jstatd 的监听地址,后面visualvm 连接 jstatd远程就要通过该地址
3、启动成功后可以先通过telnet IP 端口 验证连通性, 之后即可启动visualvm 新建host、新建jstatd连接连接到目标主机
jstatd支持的选型
options -nr 当一个存在的RMI Registry没有找到时,不尝试创建一个内部的RMI Registry-p port 端口号,默认为1099-n rminame 默认为JStatRemoteHost;如果多个jstatd服务开始在同一台主机上,rminame唯一确定一个jstatd服务-J jvm选项
-nr不创建注册表,此选项一般忽略。-p 端口指定jstatd服务监听端口。-n 自定义rmi服务名指定自定义rmi服务名,默认服务名为“JStatRemoteHost”。-J-JVM参数传递给JVM的参数:-J-Djava.security.policy=all.policy 安全策略,all.policy是一个文件。如果使用绝对路径指定,可以是-J-Djava.security.policy=\etc\jstatd\all.policy\etc\jstatd是自己创建的路径。-J-Djava.rmi.server.logCalls=true console中显示日志,有助于排查问题。-J-Djava.rmi.server.hostname=192.168.1.8 设置服务绑定的主机IP,这里有个点需要注意,如果服务端在内网,客户端通过NAT访问服务端,服务端的本机IP可能是192.168.0.4,客户端访问的IP:192.168.1.8,是服务端的外网IP,那么这里需要绑定的IP应该是服务端的外网IP:192.168.1.8,不然客户端虽然能telnet连上服务端的指定端口,但是会被拒绝服务。
要回复问题请先登录或注册
2 个回复
nccloud
1、安装visualvm
下载地址:https://visualvm.github.io/download.html
2、服务端配置,需要启动 jstatd服务,暴露端口,支持从本地的visualvm 连接到 jstatd服务所在主机
jstatd是一个rmi的server应用,用于监控jvm的创建和结束,并且提供接口让监控工具(如visualvm)可以远程连接到本机的jvms 。注意是jvms,就是说运行jstatd命令后可以用监控工具监控本用户(运行jstatd命令的用户)所有已经启动的java程序。
1、在服务器上新建文件,命名为jstatd.all.policy
内容为:
注:需要替换${java.home}/../为实际的$JAVA_HOME目录
2、在服务器上jstatd.all.policy所在目录下执行下面的命令
$JAVA_HOME/bin/jstatd -J-Djava.security.policy=jstatd.all.policy -p 端口-J-Djava.rmi.server.hostname=IP地址 -J-Djava.rmi.server.logCalls=true
其中jstatd 要执行当前系统可用的,一般$JAVA_HOME下会有
jstatd.all.policy 如果是在该文件当前目录执行,直接如上引入即可,否则需要填写jstatd.all.policy 的绝对地址
-p 端口 为指定 jstatd 的监听端口,后面visualvm 连接 jstatd远程就要通过该端口
IP地址为指定 jstatd 的监听地址,后面visualvm 连接 jstatd远程就要通过该地址
3、启动成功后可以先通过telnet IP 端口 验证连通性, 之后即可启动visualvm 新建host、新建jstatd连接连接到目标主机
nccloud
jstatd支持的选型
options
-nr 当一个存在的RMI Registry没有找到时,不尝试创建一个内部的RMI Registry
-p port 端口号,默认为1099
-n rminame 默认为JStatRemoteHost;如果多个jstatd服务开始在同一台主机上,rminame唯一确定一个jstatd服务
-J jvm选项
-nr
不创建注册表,此选项一般忽略。
-p 端口
指定jstatd服务监听端口。
-n 自定义rmi服务名
指定自定义rmi服务名,默认服务名为“JStatRemoteHost”。
-J-JVM参数
传递给JVM的参数:
-J-Djava.security.policy=all.policy 安全策略,all.policy是一个文件。
如果使用绝对路径指定,可以是-J-Djava.security.policy=\etc\jstatd\all.policy
\etc\jstatd是自己创建的路径。
-J-Djava.rmi.server.logCalls=true console中显示日志,有助于排查问题。
-J-Djava.rmi.server.hostname=192.168.1.8
设置服务绑定的主机IP,这里有个点需要注意,
如果服务端在内网,客户端通过NAT访问服务端,服务端的本机IP可能是192.168.0.4,
客户端访问的IP:192.168.1.8,是服务端的外网IP,
那么这里需要绑定的IP应该是服务端的外网IP:192.168.1.8,
不然客户端虽然能telnet连上服务端的指定端口,但是会被拒绝服务。