一种数据库访问装置、系统及方法制造方法及图纸

技术编号:15329888 阅读:117 留言:0更新日期:2017-05-16 13:28
本发明专利技术公开了一种数据库访问装置,包括:接口模块,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取访问请求的执行结果,根据执行结果调用数据库访问模块访问数据库;策略应用模块,用于收集实时监控指标数据,根据实时监控指标数据及目标策略确定访问请求的执行结果,并将执行结果发送至接口模块;数据库访问模块,用于根据接口模块的调用,对数据库进行访问;可见,在本方案中,通过该执行结果响应访问请求,从而对数据库的访问进行控制,避免由于大量或者恶意的访问造成系统繁忙或者宕机;本发明专利技术还公开了一种数据库访问系统及方法,同样能实现上述技术效果。

Database access device, system and method

The invention discloses a data access device includes an interface module, for sending and receiving access request strategy and target business logic, application module invocation strategy to gain access to the execution of the request, according to the execution result call database access module to access the database; module application strategy for collecting real-time monitoring data, determined according to the real-time monitoring index the data access request and strategy execution results, and the results sent to the interface module; database access module, interface module according to the call, access to the data base; thus, in this scheme, through the result of execution in response to the access request, so as to control access to the database, to avoid malicious or due to a large number of the resulting access system is busy or down; the invention also discloses a database Access system and method can achieve the same technical effect.

【技术实现步骤摘要】
一种数据库访问装置、系统及方法
本专利技术涉及数据库访问
,更具体地说,涉及一种数据库访问装置、系统及方法。
技术介绍
目前客户端程序对数据库的连接和操作,一般由实现数据库协议的驱动程序来实现。客户端程序调用数据库驱动程序接口,即可很方便地对数据库进行增、删、改、查。当用户访问量增加,就会产生大量数据库连接,如果连接达到数据库连接上限,客户端则会出现等待,如在一定的时间仍未连接上,客户端则出现超时。虽然可以采取增加机器性能、数据库读写分离、增加多个数据库实例、使用内存缓存等方式解决大并发,但还是可能被大量正常或恶意的访问造成系统繁忙或宕机。特别是在企业发展初期或产品推出初期,使用的系统相对简单,扩展性差,难于评估用户访问量,无法抵挡突然大量用户的访问而影响系统的使用。因此,如何在对数据库访问的基础上,减少由于大量或者恶意的访问造成系统繁忙或者宕机是本领域技术人员需要解决的问题。
技术实现思路
本专利技术的目的在于提供一种数据库访问装置、系统及方法,以实现在对数据库访问的基础上,减少由于大量或者恶意的访问造成系统繁忙或者宕机。为实现上述目的,本专利技术实施例提供了如下技术方案:一种数据库访问装置,包括:接口模块,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取所述访问请求的执行结果,根据所述执行结果调用数据库访问模块访问数据库;策略应用模块,用于收集实时监控指标数据,根据实时监控指标数据及所述目标策略确定所述访问请求的执行结果,并将所述执行结果发送至所述接口模块;所述数据库访问模块,用于根据所述接口模块的调用,对数据库进行访问。其中,所述策略应用模块包括:执行结果确定子模块,用于根据实时监控指标数据及所述目标策略判定所述访问请求的执行结果;其中所述目标策略包括:单项指标判定策略或者综合指标判定策略。其中,所述策略应用模块包括:监控指标收集子模块,用于实时收集数据库访问信息、数据库运行信息及数据库所在服务器的性能信息中的至少一者。其中,所述数据库访问模块包括:数据库访问监控子模块,用于收集数据库访问信息,并将所述数据库访问信息发送至所述监控指标收集子模块,所述数据库访问信息包括:当前调用使用连接数信息、平均每秒连接数信息和平均响应时间信息。一种数据库访问系统,包括:上述任意一项所述的数据库访问装置,以及监控装置;所述监控装置用于实时收集数据库运行信息及数据库所在服务器的性能信息,并将所述运行信息及所述性能信息发送至所述策略应用模块。其中,所述监控装置包括:数据库监控模块,用于获取数据库的运行信息,并将所述运行信息发送至监控汇总模块;所述运行信息包括:当前数据库连接数信息、剩余数据库连接数信息和内存占用信息;服务器监控模块,用于获取数据库所在服务器的性能信息,并将所述性能信息发送至监控汇总模块;所述性能信息包括:CPU使用率信息、IO性能信息和内存使用情况信息;监控汇总模块,用于将所述运行信息和所述性能信息发送至所述策略应用模块。其中,所述数据库访问装置为应用程序内的SDK。一种数据库访问方法,包括:收集实时监控指标数据;接收业务逻辑发送的访问请求及目标策略;根据实时监控指标数据及所述目标策略,确定所述访问请求的执行结果;利用所述执行结果响应所述访问请求,实现对数据库的访问。其中,所述目标策略包括:单项指标判定策略或者综合指标判定策略。其中,所述收集实时监控指标数据,包括:实时收集数据库访问信息、数据库运行信息及数据库所在服务器的性能信息中的至少一者。通过以上方案可知,本专利技术实施例提供的一种数据库访问装置,包括:接口模块,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取所述访问请求的执行结果,根据所述执行结果调用数据库访问模块访问数据库;策略应用模块,用于收集实时监控指标数据,根据实时监控指标数据及所述目标策略确定所述访问请求的执行结果,并将所述执行结果发送至所述接口模块;所述数据库访问模块,用于根据所述接口模块的调用,对数据库进行访问;可见,在本方案中,业务逻辑发送访问请求时会将与访问请求对于的目标策略一同发送,通过数据库访问装置根据实时监控指标数据及目标策略,对访问请求进行判断,得到相应的执行结果,根据该执行结果响应访问请求,从而对数据库的访问进行控制,避免由于大量或者恶意的访问造成系统繁忙或者宕机;本专利技术还公开了一种数据库访问系统及方法,同样能实现上述技术效果。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例公开的一种数据库访问装置结构示意图;图2为本专利技术实施例公开的一种数据库访问系统结构示意图;图3为本专利技术实施例公开的另一种数据库访问系统结构示意图;图4为本专利技术实施例公开的一种数据库访问方法流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例公开了一种数据库访问装置、系统及方法,以实现对数据库的访问的基础上,减少由于大量或者恶意的访问造成系统繁忙或者宕机。参见图1,本专利技术实施例提供的一种数据库访问装置100,包括:接口模块101,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取所述访问请求的执行结果,根据所述执行结果调用数据库访问模块访问数据库;具体的,本实施例中的接口模块101将对数据库的访问调用封装成接口的方法,给程序的业务逻辑调用,同时根据调用方对所选指标的目标策略进行预设,调用策略应用模块102,判断是否达到预设条件,最后根据判断结果调用数据库访问模块103访问数据库。业务逻辑在调用接口模块101时,可以设置单项指标、综合性能指标。比如,接口模块提供的设置指标的方法:setStrategy(单项指标1,单项指标1值)setStrategy(综合指标1,综合指标1值)setStrategy(单项指标1,单项指标1值,单项指标2,单项指标2值,综合指标1,综合指标1值,……)。业务逻辑设置完指标策略后,调用接口模块101提供的select/update/delete等数据库操作方法,并返回状态或数据库返回结果。这里的状态可能是1.策略阻断,未进行数据库操作;2.数据库连接异常。程序的业务逻辑可以根据返回状态或结果进行相应处理。策略应用模块102,用于收集实时监控指标数据,根据实时监控指标数据及所述目标策略确定所述访问请求的执行结果,并将所述执行结果发送至所述接口模块;其中,所述策略应用模块包括:监控指标收集子模块,用于实时收集数据库访问信息、数据库运行信息及数据库所在服务器的性能信息中的至少一者;执行结果确定子模块,用于根据实时监控指标数据及所述目标策略判定所述访问请求的执行结果;其中所述目标策略包括:单项指标判定策略或者综合指标判定策略。具体的,本实施例中的策略应用模块中收集的数据包本文档来自技高网...
一种数据库访问装置、系统及方法

【技术保护点】
一种数据库访问装置,其特征在于,包括:接口模块,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取所述访问请求的执行结果,根据所述执行结果调用数据库访问模块访问数据库;策略应用模块,用于收集实时监控指标数据,根据实时监控指标数据及所述目标策略确定所述访问请求的执行结果,并将所述执行结果发送至所述接口模块;所述数据库访问模块,用于根据所述接口模块的调用,对数据库进行访问。

【技术特征摘要】
1.一种数据库访问装置,其特征在于,包括:接口模块,用于接收业务逻辑发送的访问请求及目标策略,调用策略应用模块获取所述访问请求的执行结果,根据所述执行结果调用数据库访问模块访问数据库;策略应用模块,用于收集实时监控指标数据,根据实时监控指标数据及所述目标策略确定所述访问请求的执行结果,并将所述执行结果发送至所述接口模块;所述数据库访问模块,用于根据所述接口模块的调用,对数据库进行访问。2.根据权利要求1所述的数据库访问装置,其特征在于,所述策略应用模块包括:执行结果确定子模块,用于根据实时监控指标数据及所述目标策略判定所述访问请求的执行结果;其中所述目标策略包括:单项指标判定策略或者综合指标判定策略。3.根据权利要求1所述的数据库访问装置,其特征在于,所述策略应用模块包括:监控指标收集子模块,用于实时收集数据库访问信息、数据库运行信息及数据库所在服务器的性能信息中的至少一者。4.根据权利要求3所述的数据库访问装置,其特征在于,所述数据库访问模块包括:数据库访问监控子模块,用于收集数据库访问信息,并将所述数据库访问信息发送至所述监控指标收集子模块,所述数据库访问信息包括:当前调用使用连接数信息、平均每秒连接数信息和平均响应时间信息。5.一种数据库访问系统,其特征在于,包括:如权利要求1-4中任意一项所述的数据库访问装置,以及监控装置;所述...

【专利技术属性】
技术研发人员:罗利辉胡博吴光华张良杰
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1