logdb过大问题

编辑
文档创建者:susan (超级管理员 )     浏览次数:525次     编辑次数:3次     最近更新:doreen0813 于 2017-11-17     

目录:

1、现象编辑

用户登录决策平台的时候直接报错:out of memory,如下图所示:
222

点开详细信息,报错如下图所示:

222
由上图可知是hsql异常引起的内存溢出,同时下面信息指出
应该是往exerecord表insert数据的时候异常,而exerecord表时logdb中的其中一张表。

2、查看logdb大小编辑

查看webapps下有两个工程,WebReport和WebReport1,两个工程相同,每个工程中的logdb大小250M左右,两个工程500M左右,需要占用内存2.5G左右,如下图所示:

222

注:logdb中数据会全部加载到内存中,占用内存大小是logdb占用磁盘空间的5倍左右。  

3、查看内存分配编辑

查看tomcat内存分配,如下图所示:

222

根据logdb所需内存和实际分配内存可知,启动服务器加载完logdb后几乎没有剩余内存来做别的操作,所以一旦有其他操作就会内存溢出。

4、解决方案编辑

上述问题是因为logdb过大导致的内存溢出,此时该如何解决?

其实,logdb里面记录的是一些日志信息,实际使用过程当中并没有特别大的用处,所以我们可以考虑通过定期备份然后再清理的办法来解决,日志清理前面我们已经说过,这边就不再详细介绍,详见日志清理

注:某些情况下,logdb过大导致内存溢出会进一步导致finedb损坏;此时我们除了需要删除logdb之外还需要 把备份好的正常的finedb替换回去,然后重新启动服务器。

附件列表


主题: 数据配置
标签: 暂无标签 编辑/添加标签
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,请咨询帆软技术支持
关于技术问题,您还可以通过帆软论坛获取帮助,论坛上有非常多的大神,有些水平比帆软工程师还要高哦。
若您还有其他非技术类问题,可以联系帆软传说哥(微信ID:frbiaoge)

本文档是否有用?
谢谢! 我们非常感谢您的反馈。
提交反馈: