标签:一个 项目 基本 异常 地方 ESS 内存 接口调用 日志
最近公司项目经常出现OOM,dump出堆栈信息发现User对象占了80%的内存,
检查代码未发现有查询全量用户信息的地方,该现象连续出现了一个星期,都是User对象引起的,
仔细查看日志发现有一个接口调用异常频繁,再结合代码分析发现在接口层上一级有一个拦截器,校验session里面的用户信息,
可以断定问题基本上就在此处,每次请求接口时将查询的用户信息放入session,并且未设置session超时时间(默认半小时),
当访问量大是会出现内存暴增,
修复方案:下session信息存入Redis缓存,做session共享
标签:一个 项目 基本 异常 地方 ESS 内存 接口调用 日志
原文地址:https://www.cnblogs.com/acker-ploy/p/11634798.html