我尝试了书中的每个食谱,但今天事情就是不顺利...
我正在尝试使用VisualVM对运行在远程服务器上的Java应用程序进行分析,所以我搜索了很多方法,最终找到了这个解决方案:
java -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=9199 \
-Dcom.sun.management.jmxremote.local.only=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar bin/felix.jar
运行这个命令会让我得到 JMX 功能,然后我可以在 9199 端口上看到它正在运行:
java 21947 root 9u IPv6 1811434 0t0 TCP *:7192 (LISTEN)
java 26376 root 14u IPv6 1844518 0t0 TCP *:9199 (LISTEN)
此外,我可以测试端口在Web上是否可见:
![enter image description here](https://i.imgur.com/WuMQ4H1.png)
![enter image description here](https://istack.dev59.com/zRkVU.webp)
![enter image description here](https://istack.dev59.com/rRO5K.webp)
![enter image description here](https://istack.dev59.com/Jhw6S.webp)
编辑:我安装了wireshark来了解底层情况,所以我看到了这个。只要我在VisualVM中添加一个远程IP地址,wireshark就开始检测到这种重复活动:
![enter image description here](https://istack.dev59.com/u57jU.webp)
![enter image description here](https://istack.dev59.com/vSqFz.webp)