zoukankan      html  css  js  c++  java
  • JavaVisualVM配置远程调试jmx之踩坑日记

      懒散了许久,很久没有写博客了。因疫情过后新换工作,正式投入的ERP的开发与学习中。也正式入坑外包公司,发现外包似乎并没有传说中的:'你是外包不可以偷吃公司零食'。总体来说,国企上班制度还是挺好的,有更多的时间去思考之后的规划及职业发展了。本着技术人不断学习的精神,最近又开始学习java生产环境的课程了,之后会分享一系列相关的知识总结,共勉。

      回归正题,如何配置远程监控程序的运行状态呢?这里推荐使用jdk自带的jvisualvm软件。

      1、在服务器的Tomcat的bin目录下,修改catalina.sh配置文件。

      找到JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS"(PS:vim中查找字符方式为/字符)。在此之上补充对JAVA_OPTS的设置。

      2、ps -ef | grep tomcat 得到pid

      3、kill -9 pid,杀死tomcat进程

      4、./startup.sh重新启动tomcat

      5、打开jvisualvm软件,右键远程,添加远程服务器

      6、在远程服务器上右键添加jmx连接

       7、自信满满的点击了确定,以为能够成功了。(PS:因使用的服务器为阿里云的,所以需要配置安全组规则,否则无法访问对应的端口)天不遂人愿,连接失败,报错信息为:jvisualvm来连接VM的时候,报无法使用错误:service:jmx:rmi:....连接到ip:port

      8、上网百度,各种猜测,网上的解决方案大概为:排查防火墙是否关闭、catalina.sh配置不生效。

      9、查看防火墙的状态:systemctl status firewalld

     

       10、配置不生效不好排查了,头疼了咋办呢?

      11、往往一条路走不通的时候,可以试试另一条路,那么我们换个思路来排查。查下tomcat 进程占用的端口号

        根据进程查端口号:netstat -antup | grep pid 

        根据端口号查看进程:netstat -ntlp | grep port

       12、发现配置了8080和9004的端口号,我们已经在安全组中添加了,但是37231和42108的没有添加,问题是不是这个导致的呢,百度一下。发现如下:

       13、那么我们在安全中把这两个被监听的端口号配置上,再试一下。功夫不负有心人,结果就成功了。

     

  • 相关阅读:
    UI Shader:平面特效火
    !!! 注意区分 lua table 变量的【原地修改】与【重新赋值】
    四舍五入 :先加 0.5, 再向下取整
    预乘α
    【 pivot 】 用代码动态设置 pivot 会导致UI 立即发生位移!
    【DrawCall】 unity 动态合批被打断的规律总结
    Text 首行缩进
    SVN 不小心上传,想要回撤提交,同时还要想保存本地的更改
    unity中打开文件夹选择文件返回文件的路径
    复制文件到指定目录
  • 原文地址:https://www.cnblogs.com/cecWork/p/12953655.html
Copyright © 2011-2022 走看看