数据库中间件系统技术方案

技术编号:4301780 阅读:342 留言:0更新日期:2012-04-11 18:40
数据库中间件系统,与外部数据库连接,包括:数据处理通信组件,为外部应用程序组件提供应用程序接口以加载中间件系统,调度管理数据库中间件系统通过msip协议与外部应用程序组件通信,实现外部应用程序组件与外部数据库的通信;数据库处理组件,包括和外部数据库通信的共享数据库连接模块,及数据库操作监控器模块,检测数据库中间件系统与外部数据库之间的连接是否有效。数据库中间件系统还包括信息管理组件,其包括服务管理器模块,为不同任务设定不同处理优先级,与数据处理通信组件和数据库处理组件协调,根据设定的处理优先级并根据任务与所处的网络环境的关系,动态调度任务。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体涉及一种用于通信行业的数据库中间件。
技术介绍
目前商用的数据库如0raCle、SQL Server, MySQL等都是使用c和c++开发的,所以它对外提供的接口基本上是c的API (应用程序接口),于是以前的数据库都是使用嵌 入式的c或c++等进行访问,这就给开发系统带来了困难。后来随着数据技术的发展,数据 库管理系统的厂商开始针对不同的语言提供不同语言的API,这是一个巨大的进步,但是又 存在一个问题使用不同的数据库的应用程序,不能相互移植,即各个数据库管理系统不兼 容。这就给软件的开发,移植和扩展带来了很大的问题,违背了软件工程的思想。基于上述背景,数据库中间件技术应运而生。其中最典型的当数微软的数据库中 间件方案ODBC,及其扩展和发展如OLEDB、ADO以及ADO. NET和JAVA平台的JDBC技术,以 及在其上所开发的更高层的中间件技术。目前主要存在以下各种技术从最原始的GUI技 术和数据库API使用,再到微软数据库中间件技术,再到JAVA平台的数据库访问技术。这 些技术都存在着不同的缺点,比如,CGI程序不能被多个客户请求共享,每当接到一个客户 请求,即使有一个该CGI程序的实例在运行,也必须重新启动一个相同的实例,即创建一个 并发进程.并发请求越多,创建的并发进程越多,占用了大量内存,限制了应用程序自身所 用的内存资源,而且每个请求创建一个进程也会消耗很多时间,在需要多个数据库连接的 多用户应用中,采用CGI来连接数据库势必会随用户的增加而增加用户连接数据库的等待 时间,使系统的性能降低,并可导致系统最终的崩溃。再比如,API相互之间不兼容,它们只 能在特定的服务器和操作系统上运行,由于采用了动态链接库的形式,一旦代码质量较差 就比较容易造成服务器系统的崩溃,并且进行程序设计时会更复杂,由于它们与具体的数 据库耦合性太强,对于不同的数据库来说开发应用灵活性差,加上依赖于具体的平台和相 应的数据库版本,使其移植性差,从而导致开发周期加大,可靠性难以得到保障。
技术实现思路
一种数据库中间件系统,其与外部数据库连接,所述数据库中间件系统包括数据处理通信组件,为外部应用程序组件提供应用程序接口以便加载所述中间件 系统,且调度与管理所述数据库中间件系统通过msip协议与外部应用程序组件通信,从而 实现所述外部应用程序组件与所述外部数据库的通信;数据库处理组件,包括1)共享数据 库连接模块,其和所述外部数据库通信,以及2)数据库操作监控器模块,其检测所述数据 库中间件系统与所述外部数据库之间的连接是否有效,若发现连接无效则调用所述共享数 据库连接模块以实现与所述外部数据库的连接;以及信息管理组件,包括服务管理器模块, 其为不同的任务设定不同的处理优先级,且与所述数据处理通信组件以及数据库处理组件 相互协调,根据所设定的处理优先级,并根据任务与其所处的网络环境的相互关系,动态地 调度任务;其中当收到外部应用程序组件对数据的请求时,所述数据处理通信组件与所述服务管理器模块通信,所述服务管理器模块根据所述请求,调度所述共享数据库连接模块 使其提供与所述请求相应的接口,再由所述共享数据库连接模块与外部数据库进行交互数 据操作,并返回操作结果。以上概述仅为示意性的,并不意在以任何方式进行限制。除了上文所述的示意性 方面、实施例和特征之外,将通过参照附图和下文的详细描述而使进一步的方面、实施例和 特征变得明显。附图说明图1是根据本公开内容的一个实施方案的数据库中间件系统的模块架构图。 具体实施例方式在下文的详细描述中,将参照形成本说明书一部分的附图。在附图中,相似的附图 标记通常指代相似的部件,除非上下文中另行指出。在详细说明书、附图和权利要求书中所 描述的示意性实施例并不意在限制。在不偏离在此展现的主体的精神和范围的情况下,可 以采用其他实施例,并且可以进行其他变化。易于理解的是,在此所大致描述的以及附图 中所图示的本公开内容的各方面可以在宽泛的配置变化中进行排列、替换、组合、分拆和删 节,所有这些均被明确考虑于此。图1是根据本公开内容的一个实施方案的数据库中间件系统的模块架构图。在此 实施方案中公开了一种数据库中间件系统100,其与外部数据库300如图中所示的Oracle 数据库310、DB数据库320等连接,数据库中间件系统100包括数据处理通信组件101,为外部应用程序组件200诸如自动呼叫分配系统210、人 工坐席系统220等提供应用程序接口以便加载数据库中间件系统100,且调度与管理数据 库中间件系统100通过msip协议与外部应用程序组件200通信,从而实现外部应用程序 组件200与外部数据库组件300的通信。msip协议是一种中间件与外部各应用程序通信 协议,该通信协议按照通信行业特点设计,涵盖通信行业数据处理各种内容,协议可自动加 载,自动升级,自动识别不同通讯版本和通讯请求。中间件系统100通过msip协议与外部 应用程序组件的通信采用TCP/IP的方式进行,支持单包、多包,根据业务特点自动拆包、自 动组包,支持根据业务优先级和属性保持数据零丢失、零误码。在这个实施方案中,数据库中间件系统100还包括了数据库处理组件120,其包括 1)共享数据库连接模块121,其和外部数据库300诸如Oracle数据库310、DB数据库320 等通信,负责与外部数据库之间通信,接口的实现,实现中间件与各种数据库连接的物理操 作;以及2)数据库操作监控器模块122,其检测数据库中间件系统100与外部数据库诸如 Oracle, DB等之间的连接是否有效,若发现连接无效则调用共享数据库连接模块121以实 现与外部数据库300的连接。也就是说,数据库操作监控器模块122负责调度管理中间件 系统100与外部数据库300的物理连接的有效性和连接池的动态维护。在这个实施方案中,数据库中间件系统100还包括了信息管理组件130。针对通信 行业中网络环境具有异构性、动态性和分布性,数据流量大,不同业务有着等级处理区别, 加之对数据实时性和准确性要求高的特点,信息管理组件130采用了业务优先动态调度自 适应算法,这需要数据处理通信组件110、数据库操作监控器模块122、共享数据库连接模块121的相互协调。该算法利用业务和环境的交互模型来动态地实现网络中的任务分配。 相比于现有技术的方法,该算法对于网络中的动态环境具有更好的适应性,且调度性能更 优。在这个实施方案中,信息管理组件130包括例如服务管理器模块131,其为不同的任务 设定不同的处理优先级,且与数据处理通信组件101以及数据库处理组件120相互协调,根 据所设定的处理优先级,并根据任务与其所处的网络环境的相互关系,动态地调度任务。服 务管理器模块131管理所有服务信息,协调中间件100内各个组件的调度,同时也为外部组 件提供共享数据呈现,兼容各种操作系统和32位及64位系统。当收到外部应用程序组件200对数据的请求时,所述数据处理通信组件110与服 务管理器模块131通信,所述服务管理器模块根据所述请求,调度共享数据库连接模块121 使其提供与所述请求相应的接口,再由共享数据库连接模块121与外部数据库300进行交 互数据操本文档来自技高网
...

【技术保护点】
一种数据库中间件系统,其与外部数据库连接,所述数据库中间件系统包括:数据处理通信组件,为外部应用程序组件提供应用程序接口以便加载所述中间件系统,且调度与管理所述数据库中间件系统通过msip协议与外部应用程序组件通信,从而实现所述外部应用程序组件与所述外部数据库的通信;数据库处理组件,包括1)共享数据库连接模块,其和所述外部数据库通信,以及2)数据库操作监控器模块,其检测所述数据库中间件系统与所述外部数据库之间的连接是否有效,若发现连接无效则调用所述共享数据库连接模块以实现与所述外部数据库的连接;以及信息管理组件,包括服务管理器模块,其为不同的任务设定不同的处理优先级,且与所述数据处理通信组件以及数据库处理组件相互协调,根据所设定的处理优先级,并根据任务与其所处的网络环境的相互关系,动态地调度任务;其中当收到外部应用程序组件对数据的请求时,所述数据处理通信组件与所述服务管理器模块通信,所述服务管理器模块根据所述请求,调度所述共享数据库连接模块使其提供与所述请求相应的接口,再由所述共享数据库连接模块与外部数据库进行交互数据操作,并返回操作结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:姚滨晖伦建成
申请(专利权)人:陕西移数通电讯有限公司
类型:发明
国别省市:87[中国|西安]

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

1