栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

产线OOM问题排查-20220506

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

产线OOM问题排查-20220506

收到告警应用服务频繁重启,查看监控,发现应用频繁fullGC

找运维拿下dump文件后MAT分析

(路径:阿里云盘/IT/产线问题积累/OOM/queryPurchaseHeader_without_SheetIdParam.hprof)

发现这个http请求线程下有很多mysql相关的ByteArrayRow对象(100487个) ,推测是db查询返回数据量太多的缘故.

继续往下找相关查询sql

这是一张明细表,表里有上百万的数据,可为什么会没带查询条件呢? 

查看查询对象属性,发现sheetId和sheetIdList都为空.

看了这个接口的使用场景,是根据单据号查询明细的接口,按理说sheetId和sheetIdList不可能都为空.

查看view层转发过来的参数

 发现很多view层带过来的参数都没有sheetId,导致中台服务查询时没带参数查了全表数据.

后续让前端排查什么样的场景下会不传sheetId过来.同时后端这边增加相关的参数非空校验.

TIPS:后续关于后端相关接口还是要做好入参必传校验,血泪史

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/865829.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号