我的特定问题与JDK 1.6中使用的JMX有关:如果我正在通过JRE 1.6运行Java进程
com.sun.management.jmxremote
在命令行中,Java是否为远程JMX连接选择默认端口?
背景:我目前正在尝试开发一个过程,以提供给客户,使他们能够通过远程机器上的JMX连接到我们的流程之一。目的是帮助他们对实时显示控制台上发生的情况进行远程调试。由于他们的服务水平协议,他们强烈地希望捕获尽可能多的数据,并且如果情况看起来太复杂而无法快速解决,则可以重新启动显示控制台并允许其重新连接到服务器端。
我知道我可以在JDK
1.6进程上运行jconsole,在JDK
1.6.7之后的进程上运行jvisualvm,只要对控制台具有物理访问权限即可。但是,由于操作要求和涉及的人员问题,我们强烈希望能够远程获取所需的数据并重新启动并运行它们。
编辑:我知道命令行端口属性
com.sun.management.jmxremote.port=portNum
我要回答的问题是,如果未在命令行上设置该属性,那么Java是否会选择另一个端口进行远程监视?如果是这样,您如何确定可能是什么?
该文档建议JMX代理使用
本地 端口(某些在计算机外部无法访问的端口),除非您指定以下属性:
com.sun.management.jmxremote.port=portNum
这是出于安全原因,以及出于马铃薯头先生的考虑。因此,Java 6似乎没有为JMX 打开默认的 远程访问 端口。
编辑:在OP添加了更多信息的答案后添加。
您还有另一个选择,就是以某种方式创建一个本地代理,以侦听所有本地JMX连接并导出此信息。这样,您无需对服务器上的每个JVM实例进行这种神奇的配置。相反,本地代理可以通过JMX连接到所有JVM,然后以某种方式远程公开此信息。我不太确定如何实现此目标,但与通过JMX远程公开所有JVM所要做的工作相比,类似的工作可能会少一些。
问题内容: 我正在尝试打开与远程计算机上运行的Java应用程序的JMX连接。 应用程序JVM配置有以下选项: com.sun.management.jmxremote com.sun.management.jmxremote.port = 1088 com.sun.management.jmxremote.authenticate = false com.sun.management.jmxrem
问题内容: 我可以在服务器上ping pong Redis: 但是在远程,我遇到了问题: 在配置中,我得到了标准端口: 因此,也许我应该在远程Ubuntu计算机上打开端口6379?我该怎么做? 问题答案: 您是否设置了绑定选项以允许Redis服务器上的远程访问? 之前(文件) 后 并运行以重新启动服务器。如果这不是问题,则可能要检查所有可能阻止访问的防火墙。 重要说明: 如果您不使用防火墙(ipt
使用VisualVM,我可以看到两种类型来连接远程主机。 > jstatd 所以我正在尝试使用JMX,我学习了很多教程,但到目前为止还没有成功。 目前,有我的桌面和一个运行java服务器应用程序的linux盒子。我正在尝试在桌面上设置VisualVM客户端,以查看在linux Box上运行的java应用程序。 我为Linux上的java应用程序在start.sh脚本上添加了以下JAVA_OPTS脚
本文向大家介绍python检测远程端口是否打开的方法,包括了python检测远程端口是否打开的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python判断远程端口是否打开的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的Python程序设计有所帮助。
本文向大家介绍python检测远程udp端口是否打开的方法,包括了python检测远程udp端口是否打开的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python检测远程udp端口是否打开的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的Python程序设计有所帮助。
我们在谷歌云平台上一直面临着一个相当奇怪的问题。我们试图在google cloud上设置一个Hbase独立实例,并使用静态IP地址,然后通过Java API远程连接到该实例。 如果代码被编入Jar并部署在HBase服务器上,则运行良好,但是从本地机器上运行,尽管它打开了所有端口并完全访问,但拒绝通过Zookeeper进行连接。 搜了无数论坛,都没能成功。 已经更改了etc/hosts文件,在hba