问题已经解决了,直接在运行程序是设置了内存上限60M,目前已稳定运行一周,没有发现问题。
因为第一次用jprofile,说实话没有用明白,暂时用这种方式处理的。待研究后监控下程序到底哪个位置的存储出现了问题再来解决
用jprofile看看堆吧,看看哪些对象没被gc
代码没贴全,通过描述分析,可能是某个集合对象里的数据越来越多,没有清理机制,内存缓慢增长的话大概率是这种情况 针对代码内的公共list,set,map等,如果数据是不停的往里添加,需要有定时的清理机制或者备份机制,比如说超过多大,把数据全部刷到数据库或者redis或者文件中,然后清掉原来的集合
51,411
社区成员
86,004
社区内容
加载中
试试用AI创作助手写篇文章吧