zoukankan      html  css  js  c++  java
  • 记录一次网站打开卡--排故障过程

    此问题困扰单机组java开发两个礼拜,今天找我协助定位故障:

    故障图如下:

    排故障思路如下:

    1.网络带宽 nload 命令查询,发现带宽使用率正常;

    2.内存,cpu负载查询

    输入top 命令,正常;

     3.安装jvm监控工具软件分析线程,也没发现异常;

    jdk自带有个jvisualvm工具、该工具是用来监控java运行程序的cpu、内存、线程等的使用情况。并且使用图表的方式监控java程序、还具有远程监控能力。

    参考链接

    安装链接

    https://jingyan.baidu.com/article/48b37f8d371a921a65648863.html

    配置远程机器tomcat,找到bin目录下的startup.sh 

    vim startup.sh 加入如下配置

    #export CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=211.154.X.X  -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

     然后jvm监控工具就可以添加远程监控了,如下图

    因为我配置的是没密码的,所以这里打下马赛克

    最后也没发现啥异常;

    4.检查mysql,开启慢查询日志

     vim /etc/my.cnf

    重启mysql,而后查看慢查询日志,以为定位到了问题

    如下图

    开始还以为是索引没建齐全,而后发现不是,数据库是正常的;

     5.最后只能从代码入手,分析这几天同事更新部署了什么代码,终于发现异常,另外一个开发部署项目,把log4j,一段代码扔上来,不断输出日志,导致线程,消息连接池堵塞;

    最后注释掉那段打印日志的代码后,解决;

  • 相关阅读:
    npmcnpmyarn yarn 关于源和代理的问题
    react : umi 引入 antd 踩坑
    Ant Design Pro 学习笔记:数据流向
    dva + umi 学习笔记
    简单分析 ztree 源码
    X-Tag实战:给博客加一个隐藏侧栏的功能
    javascript中var,let,const的区别
    linq 延迟执行带来的困扰
    如何实现能像windows 窗体一样改变大小的控件 Silverlight
    一个循环递归遍历问题
  • 原文地址:https://www.cnblogs.com/wolfboy55-163-com/p/8136459.html
Copyright © 2011-2022 走看看