【008】2020.11.07 周六 --《Java日常之OOM

2020-11-08  本文已影响0人  算法成瘾者

OOM

问题

一个sql里查询的数据70W,占用内存100多M多个这样的sql,就可能导致OOM,需要Java服务都重启才能解决

原因

在RabbitMQ里操作失败后,还会失败查询,到这上述sql增多,继续发生OOM,继续重试,造成恶性循环

解决

1)限制查询数据的地方2)对OOM问题要重视,避免服务重启,影响接口和业务功能

其他

1)OOM后,可以从其dump的文件中分析定位原因解决

2)Java和php不一样的地方:Java为什么一个 OOM就会导致整个服务的挂掉? php的话出现查询一次内容过多,只是影响本次内容的,不会影响整个服务的

Idea的debug一些技巧

1)可以通过设置实现一个spring 应用启动2个服务

2)条件debug:debug时,临时修改让某些条件的走debug

3)动态调整变量的值:可以通过修改debug栏目里这个修改

上一篇下一篇

猜你喜欢

热点阅读