问题描述:

  1、系统在执行某个操作时,必现OOM异常。

问题的定位:

  1、排查代码,未发现问题。

  2、在虚拟机启动时,添加参数:-XX:+HeapDumpOnOutOfMemoryError(当发生oom异常时,生成dump文件),得到异常时的dump文件。

  3、使用 jvisualvm 分析dump文件。发现某个pojo存在很多个实例对象,再定位到具体抛出异常的地方,发现是在获取数据库数据时,没有使用分页参数,导致 select * from tableName 这样的低级错误发生。

问题的解决:

  显而易见。

 

由该案例得到的总结:

  1、由于开发人员的不规范编码,导致的问题。

    比如说:变量的命名问题,变量名称应该顾名思义。

    因此:强制推行全员使用《阿里java开发规范》进行代码的检查与开发。

 

相关文章:

  • 2021-08-27
  • 2022-01-18
  • 2021-12-09
  • 2021-10-25
  • 2022-01-12
  • 2021-09-13
  • 2021-04-22
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-08
  • 2021-05-03
  • 2021-11-07
  • 2021-11-22
  • 2021-10-01
相关资源
相似解决方案