java jmx 配置_为什么在配置JMX时Java打开3个端口?
发布日期:2021-06-24 16:15:23 浏览次数:4 分类:技术文章

本文共 3225 字,大约阅读时间需要 10 分钟。

我在Centos6上使用JDK7运行Java程序。我使用以下选项启用JMX:

JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true"

当我检查打开哪些端口时,我发现另外两个随机端口:

netstat -plunt | grep java

tcp 0 0 :::9123 :::* LISTEN 13295/java

tcp 0 0 :::59927 :::* LISTEN 13295/java

tcp 0 0 :::59928 :::* LISTEN 13295/java

请注意,每个仅重新启动配置的端口9123保持不变,并且另外两个端口更改值。

netstat -plunt | grep java

tcp 0 0 :::9123 :::* LISTEN 13331/java

tcp 0 0 :::59932 :::* LISTEN 13331/java

tcp 0 0 :::59933 :::* LISTEN 13331/java

还有2个附加端口,为什么要打开?

如何配置2个其他随机端口?

如何配置::ffff:127.0.0.1将在JMX打开的所有端口之前出现?

为什么与JConsole连接时不使用一个端口?

添加以澄清答案

不幸的是,附加的随机端口仍然打开为了提醒您,我使用Centos6。我的Tomcat设置如下所示(Tomcat不会部署任何应用程序):

CATALINA_OPTS="${CATALINA_OPTS} -XX:+DisableAttachMechanism -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true -Djava.rmi.server.useLocalHostname=true -Djava.rmi.server.useCodebaseOnly=true -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.rmi.port=9123"

Tomcat进程如下所示:

/usr/java/jdk1.7.0_51/bin/java -Djava.util.logging.config.file=/usr/tomcat-7.0.47/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -XX:+DisableAttachMechanism -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true -Djava.rmi.server.useLocalHostname=true -Djava.rmi.server.useCodebaseOnly=true -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.rmi.port=9123 -Djava.endorsed.dirs=/usr/tomcat-7.0.47/endorsed -classpath /usr/tomcat-7.0.47/bin/bootstrap.jar:/usr/tomcat-7.0.47/bin/tomcat-juli.jar -Dcatalina.base=/usr/tomcat-7.0.47 -Dcatalina.home=/usr/tomcat-7.0.47 -Djava.io.tmpdir=/usr/tomcat-7.0.47/temp org.apache.catalina.startup.Bootstrap start

不幸的是,每次我看到其他监听端口时:

tcp 0 0 :::38830 :::* LISTEN 790/java

tcp 0 0 ::ffff:127.0.0.1:8080 :::* LISTEN 790/java

tcp 0 0 :::9123 :::* LISTEN 790/java

附加运行:

tcp 0 0 ::ffff:127.0.0.1:8080 :::* LISTEN 2348/java

tcp 0 0 :::36252 :::* LISTEN 2348/java

tcp 0 0 :::9123 :::* LISTEN 2348/java

顺便说一句,为什么我::ffff:127.0.0.1在RMI端口之前看不到?

增加了第二次以澄清评论

它与Tomcat不相关。我试图用类似的设置运行ant:Ant进程如下所示:

/usr/bin/java -XX:+DisableAttachMechanism -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true -Djava.rmi.server.useLocalHostname=true -Djava.rmi.server.useCodebaseOnly=true -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.rmi.port=9123 -classpath /usr/apache-ant-1.9.2/lib/ant-launcher.jar -Dant.home=/usr/apache-ant-1.9.2 -Dant.library.dir=/usr/apache-ant-1.9.2/lib org.apache.tools.ant.launch.Launcher -cp sleep

不幸的是,每次我看到其他监听端口时:

tcp 0 0 :::41200 :::* LISTEN 13597/java

tcp 0 0 :::9123 :::* LISTEN 13597/java

附加运行:

tcp 0 0 :::58356 :::* LISTEN 13629/java

tcp 0 0 :::9123 :::* LISTEN 13629/java

答:这是Java的错误

我成功打开了Java上的错误:http

:

//bugs.java.com/bugdatabase/view_bug.do?bug_id=8035404

转载地址:https://blog.csdn.net/weixin_33758343/article/details/114195495 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java thread回调_使用Runnable在Java中实现回调
下一篇:Java get set 同步_java – getResultSet()“每个结果只能调用一次”

发表评论

最新留言

很好
[***.229.124.182]2024年04月07日 19时06分38秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

嵌入式系统开发笔记1:构建VirualBox虚拟机开发环境 2019-04-28
嵌入式系统开发笔记2:Linux的主流发行版本 2019-04-28
嵌入式系统开发笔记3:Linux发行版本的选择 2019-04-28
嵌入式系统开发笔记4:Linux内核版本的维护者 2019-04-28
嵌入式系统开发笔记5:让VS Code在调试时启动特定文件 2019-04-28
嵌入式系统开发笔记21:MODBUS电表2 2019-04-28
嵌入式系统开发笔记22:MODBUS电表3 2019-04-28
AR502H-CN开发笔记48:SQLite中的数据类型 2019-04-28
嵌入式系统开发笔记23:解决Call to deprecated function get_sheet_by_name (Use wb[sheetname])问题 2019-04-28
成长笔记1:三层难度步步进阶,我用21部原版动画,带娃积累2000词汇 2019-04-28
成长笔记2:用这15句话夸孩子,决定他们一生思维高度 2019-04-28
成长笔记3:人生是长跑,开始冲那么快又有什么用?起跑快了就保证你不会落后在终点线上? 2019-04-28
嵌入式系统开发笔记24:在VS Code中设置保存所有文件 2019-04-28
嵌入式系统开发笔记25:win10防火墙打开特定端口 2019-04-28
嵌入式系统开发笔记26:解决UDP广播命令不能有效访问的问题 2019-04-28
AR502H-CN开发笔记49:解决多线程调用printf函数同步问题 2021-07-01
技术前沿与经典文章37:2021年信息产业十大技术趋势 2021-07-01
AR502H-CN开发笔记50:Systemd介绍 2021-07-01
AR502H-CN开发笔记51:Systemd中Unit的配置文件 2021-07-01
AR502H-CN开发笔记52:deb包的相关知识 2021-07-01