[发明专利]一种基于内存的日志信息防溢出方法无效
申请号: | 201110371969.6 | 申请日: | 2011-11-18 |
公开(公告)号: | CN102521148A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 田睿;漆亮;吴振宇;张弛;李海蔚 | 申请(专利权)人: | 深圳中兴网信科技有限公司 |
主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F9/44 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518057 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 内存 日志 信息 溢出 方法 | ||
技术领域
本发明涉及软件领域,特别是涉及一种防止日志信息溢出的管理方法。
背景技术
目前,随着计算机软件研发项目的不断扩大,文件越来越多,通过日志文件能够有效的跟踪到程序发生一些操作动作,如增加,删除,修改,查询方面等操作,更重要的是能够跟踪到程序发生错误时,及时的提供一些错误信息,相关人员通过读解该错误日志信息,能马上找出哪里出现了问题,以便及时的对问题采取相应的手段进行修正和改进。
但是,随着软件的功能不断壮大,日志读写非常频繁,不断的频繁日志读写操作则加剧了服务器的负担,降低了软件性能。这时,可以通过将日志信息内容写入到内存中去,然后再去读内存中的信息,提高项目运行的性能。但是,由于每台服务器的配置不同,内存大小各不一致,内存有一定的大小限制的,当日志信息大小超过了实际内存大小时,就有可能会产生内存溢出现象,出现内存溢出错误信息。
所以,在基于内存的日志信息读写操作中,如何来防止内存溢出是一个需要解决的技术问题。
发明内容
本发明的目的在于提供一种基于内存的日志信息防溢出方法,通过防止内存溢出,从而达到防止信息日志溢出,有效地提高日志信息的管理。
为解决以上技术问题,本发明提供一种基于内存的日志信息防溢出方法,包括:
获取日志信息大小和JVM内存大小;
判断内存是否溢出,并根据判断结果进行防内存溢出处理。
进一步地,所述获取JVM内存大小的方法包括:通过程序读取内存剩余情况。
进一步地,所述通过程序读取内存剩余情况的方法包括:通过JAVA中的Runtime类的getRuntime().freeMemory()方法来实现读取内存剩余信息。
进一步地,所述判断内存是否溢出的方法包括:将日志信息大小与JVM内存大小进行判断,如果日志信息大小大于JVM内存大小,则内存溢出。
进一步地,当内存溢出时,通过以下方式进行防内存溢出处理:调高JVM内存,使JVM内存大于日志信息大小。
进一步地,当内存溢出时,通过以下方式之一进行防内存溢出处理:动态调整JVM内存。
进一步地,所述动态调整JVM内存,具体包括:
当日志信息大小快要超过JVM内存大小时,动态地通过调用脚本命令来改变JVM内存大小;
当日志信息大小超过实际内存的设定倍数以上时,将日志信息写入到本地磁盘文件中;
当日志信息大小超过实际内存大小,且小于实际内存设定倍数时,扩大虚拟内存。
进一步地,所述方法还包括:将日志信息写入到内存中。
与现有技术相比,本发明提供的一种基于内存的日志信息防溢出方法,通过防止内存溢出,从而达到防止信息日志溢出,有效地提高日志信息的管理。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明提供的一种基于内存的日志信息防溢出方法流程图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明提供一种基于内存的日志信息防溢出方法,将日志信息写入内存之前,经过防止内存溢出处理后,再将日志信息写入到内存中,具体包括以下步骤:
步骤1、获取日志信息大小和JVM内存大小;
JVM内存大小可以通过程序来判断,通过程序读取内存剩余情况。可以通过以下方法来读取内存剩余空间大小:通过JAVA中的Runtime类的getRuntime().freeMemory()方法来实现读取内存剩余信息。
步骤2、判断内存是否溢出,并根据判断结果进行防内存溢出处理;具体方法如下:
判断日志信息大小是否超过JVM内存大小,如果没有超过,则转到步骤4,如果超过,就会导致内存溢出,出现内存溢出错误,则按以下步骤3的方式进行防溢出处理:
方式一:调高JVM内存,使JVM内存大于日志信息大小。具体设置方法可以通过命令来设置,例如:set JAVA_OPTS=-Xms800m-Xmx800m,其中-Xms是初始化内存,-Xmx是最大内存,通过这2个参数值可以根据程序实际情况来设置一个合理的大小,来防止内存溢出。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳中兴网信科技有限公司,未经深圳中兴网信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110371969.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:滤波装置、基站系统及频率通道的切换方法
- 下一篇:滚动直线导轨副可靠性测试机
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置