美文网首页
java进程假死问题解决

java进程假死问题解决

作者: 迦叶_金色的人生_荣耀而又辉煌 | 来源:发表于2022-11-14 20:19 被阅读0次

    1.现象

    a.cpu、内存、io等全部正常
    b.进程存在,但程序卡死

    2.排查过程

    a.内存状态查询

    jstat -gcutil pid
    

    b.内存快照导出

    sudo -u wwwroot `jmap -dump:live,format=b,file=heap001 pid`
    

    --上述命令导不出的时候,执行下面这条语句

    sudo -u wwwroot `jmap -F -dump:live,format=b,file=heap001 pid`
    

    c.栈信息导出

    sudo -u wwwroot `jstack pid > aaa.txt `
    

    d.内存信息查看

    free
    

    e. ulimit查看
    注意不同的用户情况


    3.解决办法

    1.清除页缓存

    echo 3 > /proc/sys/vm/drop_caches
    

    2.ulimit配置调整
    配置不合理存在的现象是:1、程序无法进入 2、无任何异常日志 3、线程数和数据库连接数均不多 4、程序进程正常

    1、查看命令:ulimit -a
    2、修改vim /etc/security/limits.conf,添加或修改配置(可能之前已经存在),添加完成后关闭putty并重新连接通过ulimit -a查看是否生效
    
    * soft nproc 35535
    * hard nproc 65535
    * soft nofile 35535
    * hard nofile 65535
    
    3、如果上述修改无法生效,尝试查看或修改vim /etc/security/limits.d/20-nproc.conf,内容同上
    4、如果2、3均无法生效,联系运维排查无法生效问题
    

    相关文章

      网友评论

          本文标题:java进程假死问题解决

          本文链接:https://www.haomeiwen.com/subject/tnijxdtx.html