[发明专利]基于JAVA语言通过异步方式存储日志的方法无效
申请号: | 201110066095.3 | 申请日: | 2011-03-18 |
公开(公告)号: | CN102331991A | 公开(公告)日: | 2012-01-25 |
发明(设计)人: | 魏鼎;贾艳斌;樊学峰 | 申请(专利权)人: | 北京神州数码思特奇信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 杨立 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 java 语言 通过 异步 方式 存储 日志 方法 | ||
技术领域
本发明涉及一种基于JAVA语言通过异步方式存储日志的方法。
背景技术
目前系统中的产生的日志都需要被记录下来,但是随着系统越来越大,记录的日志数量越来越多。大量同步记录日志的方式会产生很多I/O操作,这对系统的整体性能造成一定影响。
发明内容
本发明针对以上不足提供一种基于JAVA语言通过异步方式存储日志的方法,通过一种异步的,批量的方式来实现日志的存储,有效提高系统对于日志存储的性能。
本发明解决上述技术问题的技术方案如下:一种基于JAVA语言通过异步方式存储日志的方法,它包括以下步骤:
步骤1:配置包含日志存储API的文件,并将该文件复制到JAVA工程的Lib目录中,并设置到JAVA工程类路径classpath中;
步骤2:配置调用日志存储API的文件参数,所述参数包括数据库连接参数、日志队列大小参数、日志批量入库条数参数和日志文件目录参数;
步骤3:加载步骤2中配置的文件参数,并初试化数据库连接、日志队列以及日志文件目录;
步骤4:调用日志存储API,进行异步存储日志;
步骤5:通过判断日志队列是否已满,将日志记录至日志队列,或将日志存储日志文件中并更新日志文件目录,然后将日志存入数据库。
进一步的,步骤5为判断日志队列是否已满,未满则将日志直接记录至日志队列,日志队列扫描线程扫描日志队列,将日志存入数据库;
日志队列已满,则将日志记录到配置的目录中日志文件中,文件扫描线程重复扫描日志文件目录,并将日志存入数据库,日志存储后删掉日志文件。
进一步的,步骤5中的将日志记录至日志队列或日志文件与日志存储异步进行。
本发明的有益效果是:本发明基于异步方式、批量的进行日志存储,可以有效提高系统的整体性能;在以后开发新的系统时,可以直接集成本模块,无需再开发日志模块;本发明使用简单,直接调用记录日志的静态方法即可,可以提高开发效率。
附图说明
图1为本发明流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明包括以下步骤:
步骤1:配置包含日志存储API的文件,即log.jar文件,并将该文件导入JAVA(Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称)工程中,即将本发明Jar文件:log.jar文件复制到JAVA工程的Lib(类库)目录中,并设置到JAVA工程类路径classpath(让Java执行环境找到指定的Java程序(也就是.class文件)的变量)中。
log.jar文件内核心处理程序片段如下:
1. Scheduler.Java -把阻塞队列里边的日志入库的线程
package com.sitech.i4a.audit.log;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.concurrent.ArrayBlockingQueue;
import org.apache.log4j.Logger;
import com.sitech.i4a.audit.log.env.LogENV;
import com.sitech.i4a.audit.log.vo.LogVO;
/**
* 项目名称:i4a-v2.0
* <p>Title: Scheduler</p>
* <p>Description: 把阻塞队列里边的日志入库的线程</p>
* <p>Copyright: Copyright (c) 2009</p>
* <p>Company: SI-TECH </p>
* authorsi-tech
* 创建时间:Aug 15, 2009 8:14:42 PM
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京神州数码思特奇信息技术股份有限公司,未经北京神州数码思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110066095.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可防止拉绳跳离滑轮的拉幕式蚊帐导轨滑轮架
- 下一篇:机头发热式豆浆机