zoukankan      html  css  js  c++  java
  • Java故障定位方法总结

    • 多线程并发,程序执行速度较快,使用简单断点不能够定位到出错的线程;
      •   通过打印日志,不断精确定位故障的位置和导致故障的原因。
      • 在断点处设置condition为Thread.currentThread().getName().contains("目标线程池的名字");
    • 线程池之间的任务调度,导致堆栈较短。
      •   分析多个线程池级联调用的顺序关系,分析线程池任务的相互转换关系。
    • 某个程序可能会被不同的接口进行调用。
      •   在出错的位置,生成IllegalArgumentException(),使用logger.error(e)打印堆栈信息到日志,分析堆栈信息,找到引起故障的调用接口。
    • 程序不断创建新的线程池,已知该线程池的名字,对程序不熟悉
      •   在日志中搜索该线程池,找到线程池打印的日志,到代码中搜索该日志,找到打印日志的位置。
  • 相关阅读:
    模块化
    ES6中的let
    ES6中的块级作用域
    Mobile 移动端
    H5离线缓存
    nginx 配置步骤
    虚拟路径的配置
    Apache和php的相关配置
    TCP/IP协议
    PHP中的文件操作
  • 原文地址:https://www.cnblogs.com/MyLifeMyWay/p/8481911.html
Copyright © 2011-2022 走看看