CN101661494A - 一种分布式中间件与数据库数据交互方法 - Google Patents

一种分布式中间件与数据库数据交互方法 Download PDF

Info

Publication number
CN101661494A
CN101661494A CN200910018487A CN200910018487A CN101661494A CN 101661494 A CN101661494 A CN 101661494A CN 200910018487 A CN200910018487 A CN 200910018487A CN 200910018487 A CN200910018487 A CN 200910018487A CN 101661494 A CN101661494 A CN 101661494A
Authority
CN
China
Prior art keywords
request
database
data
information
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910018487A
Other languages
English (en)
Other versions
CN101661494B (zh
Inventor
于海忠
齐滨
潘恒
李森
刘强
李攀
李克
孟帅
赵冰
王博
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Laiwu Iron and Steel Group Co Ltd
Original Assignee
Laiwu Iron and Steel Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Laiwu Iron and Steel Group Co Ltd filed Critical Laiwu Iron and Steel Group Co Ltd
Priority to CN2009100184875A priority Critical patent/CN101661494B/zh
Publication of CN101661494A publication Critical patent/CN101661494A/zh
Application granted granted Critical
Publication of CN101661494B publication Critical patent/CN101661494B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明涉及一种分布式中间件与数据库的数据交互方法,属于分布式系统中间件技术领域。其中分布式中间件由请求监听模块、请求接收模块、结果发送模块、数据缓存模块和数据访问模块组成,其特征在于数据缓存模块分别和请求接收模块、结果发送模块及数据访问模块相连接;请求监听模块和请求接收模块相连接;结果发送模块和请求监听模块分别通过TCP/IP通信协议与应用程序相连接,以实现信息通信目的;数据访问模块通过ODBC技术和数据库相连接,以实现其和数据库的信息传送。本发明方法提出了一种可复用、易解析、高效性、以及兼容性及扩展性较好的一种分布式中间件与数据库的高效数据交换方法。

Description

一种分布式中间件与数据库数据交互方法
技术领域
本发明涉及一种分布式中间件与数据库的数据交互方法,属于分布式系统中间件技术领域。
背景技术
随着分布式计算系统的发展,中间件技术应运而生。中间件是在分布式系统环境中,实现应运互联、资源共享的一类独立的系统软件或服务程序。中间件已经成为分布式系统的关键性基础软件,有了中间件以后,就可以更方便的开发、运行和管理分布式应用系统。
在传统的分布式系统中中间件与数据库交互大都存在以下不足:
1.不可复用
目前很多的系统环境由多个开发商提供的产品组成,其中的中间件产品只针对某一特定数据库以及应用程序进行设计,当产品之间产生差异或应用程序需求之间的差异以及系统框架改变后中间件则无法启用。
2.传输信息编码解码复杂
传统中间件与应用程序之间的信息传输以字符流(二进制数据)形式进行,在程序设计前期需要定制详尽的信息编码与解析方式,这样大大减缓了系统的处理能力,在解码过程中易产生错误,同时也不便于进行传输信息的错误检查。郑州轻工业学院学报,2008年第23期,名称为《基于XML的异构数据库中间件研究》公开了一种现有技术即为此列。
3.数据请求冲突
分布式系统中当应用程序数量较多或程序要求的数据更新较多较快时,易造成数据冲突和网络堵塞,极易导致系统运行迟缓或死机,成为整个系统性能的瓶颈,同样,大量的数据库请求会产生数据库请求的瓶颈。《微计算机应用》,2008年第09期,名称为《可复用可动态加载式数据库中间件的设计》公开了一种现有技术即为此列。
ODBC(Open Database Connectivity,开放数据库互连)技术是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access,MYSQL还是Oracle数据库,均可用ODBC API进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。该技术的应用增强本发明的可复用性。
本发明使用了目前Internet环境中较为流行XML技术,降低传输信息编码解码的复杂度,增强了系统的复用性。XML技术是跨平台的,依赖于内容的技术,是当前处理结构化数据信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立和解析,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。XML的简单使其易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言,就意味着程序可以更容易的与Windows、Mac OS,Linux以及其他平台下产生的信息结合,然后可以很容易加载XML数据到程序中并解析,并以XML格式输出结果。
使用C#泛型技术组建和控制数据库访问的线程,泛型最常见的用途是创建集合类,本技术使用了Dictionary<(Of<(TKey,TValue>)>)泛型类,Dictionary<(Of<(TKey,TValue>)>)泛型类提供了从一组键到一组值的映射。字典中的每个添加项都由一个值及其相关联的键组成,通过键来检索值的速度是非常快的,接近于0(1),这是因为Dictionary<(Of<(TKey,TValue>)>)类是作为一个哈希表来实现的。对于本发明类似创建了一个小型内存数据库,通过获得优先级别方式缓解数据请求的冲突。
发明内容
本发明针对目前分布式系统中中间件技术的不足,采用XML解析技术、C#泛型技术和ODBC(OpenDatabase Connectivity,开放数据库互连)技术等多项先进技术,提出一种可复用、易解析、高效性、以及兼容性及扩展性较好的一种分布式中间件与数据库的高效数据交换方法。
本发明的技术方案如下:
一种分布式中间件,由请求监听模块、请求接收模块、结果发送模块、数据缓存模块和数据访问模块组成,其特征在于数据缓存模块分别和请求接收模块、结果发送模块及数据访问模块相连接;请求监听模块和请求接收模块相连接;结果发送模块和请求监听模块分别通过TCP/IP通信协议与应用程序相连接,以实现信息通信目的;数据访问模块通过ODBC技术和数据库相连接,以实现其和数据库的信息传送。
如上所述的一种分布式中间件与数据库的数据交互方法,步骤如下:
1)开始
2)发送、接收请求
中间件分客户端和服务端两部分,在服务端指定端口创建客户端发送数据库操作请求监听程序,针对接收到客户端请求信息创建其对应的数据处理服务,网络连接状态的判定为系统提供基础数据通讯支持,数据处理服务对发送的请求信息依据数据库请求编码与解析技术进行信息的校正,如接收的请求信息有误会回执客户端错误信息提示,请求信息准确完整则将解析信息交至数据库信息处理服务;
3)信息通讯
信息通讯是以C#异步通信技术作为基础,使用C#异步通信技术可以避免网络通信中的阻塞现象,中间件客户端在首次运行时会向服务端发送建立异步通信的连接请求,连接请求内容包括客户端IP地址以及通讯信息接收和发送端口,服务端解析接收的连接请求信息通过套接字与客户端建立信息通讯链接;
4)数据库请求编码与解析
在客户端中定义字符串对象;将数据库请求信息以可扩展标记语言XML形式填充至该字符串,依据可扩展标记语言XML的语法规则,数据库请求信息以如下的格式进行编码:
<CMD METHOD=“数据库请求类型(SELECT、DELETE、UPDATE)”>
数据库请求信息内容(结构化查询语言)
</CMD>
此方式改变以往以帧格式进行通信信息编解码,简化了通讯信息内容的制定的复杂度,使用XML可扩展标记语言技术中的XmlNode类方法读取节点内容,这样大大缩短编解码信息时间,对接收的信息进行相应语法规则的校对即能判定接收信息请求的完整性;
5)数据库请求信息处理
接收客户端发送的完整数据库请求,将接收的完整数据库请求信息依据请求时间的先后暂存入数据缓存中,服务端通过ODBC开放数据库互连技术创建数据库链接,并借助ODBC开放数据库互连技术中提供的OdbcCommand类ExecuteNonQuery方法,以ODBC开放数据库互连技术为基础,使用ExecuteNonQuery方法来执行多个数据库操作语句并返回数据库请求信息处理结果,这样大大提高了本服务端的数据库请求信息的处理能力,根据数据缓存中的数据库请求优先级别进行数据库相应操作,避免了多请求访问数据库造成的数据库访问效率的下降;
6)请求结果发送
将数据库请求结果以XML方式进行编码,<CMD TABLE=“表名”METHOD=“请求类型”>执行状态</CMD>为请求结果信息开始标志,如果数据请求操作正常则以<RES TABLE=“表名”>结果内容</RES>形式进行填充,通过创建与客户端的套接字链接发送至客户端应用程序。
上面所述的<CMD>是符合可扩展标记语言XML语法规则的文档元素(document element),它是该字符串中最外面的标签即主标签。所有其他的标签必须包含在这个标签之内来组成一个有效的可扩展标记语言文件。
METHOD为可扩展标记语言XML标签的属性即CMD标签的属性,在本发明中标记了客户端的请求类型即数据库操作类型如SELECT、INSERT、UPDATE等。
数据库请求信息内容,依据结构化查询语言(Structured Query Language)的语法规则即可满足本发明的要求。
如上所述的一种分布式中间件与数据库的数据交互方法,其服务端工作方法,步骤如下:
1)服务端工作开始;
2)监听通讯端口;
3)判断是否监听到请求;若是,则进行下一步,否则转到步骤2)继续监听;
4)创建连接;
5)接受请求;
6)判断是否接受到请求,若是,则进行下一步,否则转到步骤5);
7)解码;
8)存入数据缓存器;
9)读取请求;
10)判断是否得到正确请求信息,若是,则进行下一步,否则转到步骤9);
11)访问数据库;
12)获取数据结果;
13)发送数据结果;
14)判断发送是否超时,若是,则进行下一步,否则转到步骤17);
15)丢弃数据包;
16)写入日志,转到步骤13),重新发送数据结果;
17)发送成功;
18)判断是否断开连接,若是,则断开连接,结束工作,否则转到步骤5)。
利用XML(Extensible Markup Language)即可扩展标记语言作为自主研发的“通信信息编码与解析组件”的基础,XML可以实现跨平台的,这样大大加强了本系统的可复用性,同时XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,使用该技术大大提高了本系统数据通信中编码和解码的效率,同时能更直观的检查系统通信中存在的数据通信错误。
中间件的目的是通过为异质计算环境中的服务和资源提供统一、一致的观察结果,简化用户界面。中间件在为同一平台或不同平台上使用不同开发商产品的最终用户或者开发人员创造了浑然一体的连通性。因此,确切的说,它是透明的,开发人员和用户看不到它。
中间件能满足大量应用的需要运行于多种硬件和操作系统平台支持分布计算,提供跨网络、硬件和操作系统平台的透明性的应用或服务的交互、支持标准的协议、支持标准的接口。
由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已成为许多标准化工作的主要部分。对于应用软件开发,中间件远比操作系统和网络服务更为重要,中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投资。
具体功能分如下几个部分详细介绍:
1.信息接收和发送
本技术凭借成熟、稳定的套接字技术开发一个服务器-客户端模型,开发原理:
服务器,使用套接字服务端监听指定的端口(端口号:55555),等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。
客户端,使用套接字对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭套接字。客户端不需要指定打开的端口,通常临时的、动态的分配一个端口。
套接字接口是TCP/IP网络的应用程序接口,套接字接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。
2.通信信息编码与解析
本技术在通讯的信息编码方面借鉴了简单的数据存储语言可扩展标记语言技术,将信息以可扩展标记语言数据存储结构的形式进行编码。可扩展标记语言是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然可扩展标记语言占用的空间比二进制数据要占用更多的空间,但可扩展标记语言极其简单易于掌握和使用。根据可扩展标记语言语法规范,将应用程序发送的请求以如下格式进行定义:
<CMD METHOD=”SELECT”>SELECT * FROM TABLENAME</CMD>
格式解释:
<CMD>是文档元素(document element),它是文件中最外面的标签(我们认为元素(element)是起始标签和结束标签之间的内容)。所有其他的标签必须包含在这个标签之内来组成一个有效的可扩展标记语言文件。
METHOD为XML文档元素的属性,在本发明中标记了客户端的请求类型,我们根据请求的类型进行定义为SELECT、INSERT、UPDATE等。
SELECT * FROM TABLENAME为请求的内容,根据应用程序的请求进行添加。
3.请求信息数据缓存的处理
以数据库为中心的分布式系统有其优点,其编程思路比较简单清晰,容易被人理解和掌握。对于网路信息交互量不多的系统,可以采用以数据库为中心的系统,同时可以通过数据规划合理地分配各计算机的任务,使用一些编程技术来降低网路的信息流量,提高系统的性能。例如在程序中应尽量使用全局变量创建公用数据库连接,避免每次不必要的数据连接重建时间。但是如果系统较大、网路信息交互量较多或对系统实时性和可扩展性要求较高时,应采用中间件数据通讯的设计方案。在以数据库为中心的系统设计方案中,由于数据的请求访问直接由数据库来完成。如果网路有多个应用程序都需要知道该数据的变化,则都必须多次数据库访问才能实现。这样就浪费了许多网络资源,容量造成瓶颈。在采用中间件通讯的设计方案中,通过中间件通讯来解决网络中各应用系统间的数据交互与刷新问题,其中对于多应用系统都需要的数据变化通过网络广播的方式以定时和数据变化实时触发传送的机制向所需系统通知该数据已发生变化和具体的数值。因此,与以数据库为中心的方案相比,这种设计方案减少了因数据刷新所需的多次访问问题,大大减少了数据流量,同时网络传输还可以增加数据正确性和合法性校验,为操作者或系统管理员及时提供系统信息和出错信息,便于系统故障诊断和系统调试。
可见,原数据库模块对于不同的数据请求都要经过主线程的处理,并且只有一处数据缓存;新的数据库模块根据表格的数量会生成相应的线程,充分利用了多线程的优势,并有多个数据缓存,这样就避免了多线对内存造成的读写错误。
本技术使用了Dictionary<(Of<(TKey,TValue>)>)C#泛型类,Dictionary<(Of<(TKey,TValue>)>)泛型类提供了从一组键到一组值的映射。字典中的每个添加项都由一个值及其相关联的键组成,通过键来检索值的速度是非常快的,接近于0(1),这是因为Dictionary<(Of<(TKey,TValue>)>)类是作为一个哈希表来实现的。在本系统中将应用系统对数据库的操作请求填充至Dictionary类中,根据请求的先后顺序创建相应的优先级,由数据访问模块获得优先级进行数据的处理工作。
本系统的技术特征是基于高级编程语言开发,以及当前较先进的可扩展标记语言技术和动态链接库技术。采用自主研发的“通信信息编码与解析组件”实现高效、可靠的数据通讯。采用异步通讯技术搭建系统分布式通信架构,实现服务端与客户端的数据传输;利用高级编程语言高性能的数据处理能力和自主研发“数据缓存组件”,实现了通信信息的准确、高效编解码。利用安全数据库访问技术实现了中间件与多种数据库之间的数据交互。利用数据缓存技术在数据库中创建存储数据缓存。
综上所述,本技术是一种可复用、高效的数据交互中间件技术,采用模块化设计,各模块间即相对独立又相互协作,充分发挥数据共享、资源独立机制的特性,使设计更合理,更便于扩展和维护。同时结合高级编程语言技术、异步通讯技术、可扩展标记语言技术、文件I/O接口技术等国际先进技术,使系统功能更强大,具有性能高、兼容性好、扩展性强等特点。
本系统的优点是:集成自主研发的“通信信息编码与解析组件”以及“数据缓存组件”为系统提供高效可靠的数据通讯功能;采用异步通讯技术搭建系统分布式处理架构,实现服务端与客户端的数据传输,实现系统分布式;利用高级编程语言的高效、安全数据库访问技术实现了中间件与多种数据库之间的数据交互;利用数据缓存技术在数据库中创建存储数据缓存;系统采用程序模块化设计及数据共享、资源独立的机制,使系统设计更合理。
附图说明
图1是本发明一种分布式中间件的结构示意图。
其中:1、中间件,2、数据缓存模块,3、结果发送模块,4、请求接收模块,5、数据访问模块,6、请求监听模块,7、应用程序,8、数据库。
图2是本发明所述的一种分布式中间件与数据库的数据交互方法方框示意图。
其中9-14表示该方法的各个步骤。
图3是本发明方法中服务端工作方法的流程图。
其中15-34表示该方法的各个步骤。
具体实施方式
下面结合附图与实施例对本实用新型作进一步说明,但不限于此。
实施例1:(硬件实施例)
如图1所示,一种分布式中间件,由请求监听模块6、请求接收模块4、结果发送模块3、数据缓存模块2和数据访问模块5组成,其特征在于数据缓存模块2分别和请求接收模块4、结果发送模块3及数据访问模块5相连接;请求监听模块6和请求接收模块4相连接;结果发送模块3和请求监听模块6分别通过TCP/IP通信协议与应用程序7相连接,以实现信息通信目的;数据访问模块5通过ODBC技术和数据库8相连接,以实现其和数据库8的信息传送。
实施例2:(方法实施例)
如图2所示,一种分布式中间件与数据库的数据交互方法,步骤如下:
9)开始
10)发送、接收请求
中间件分客户端和服务端两部分,在服务端指定端口创建客户端发送数据库操作请求监听程序,针对接收到客户端请求信息创建其对应的数据处理服务,网络连接状态的判定为系统提供基础数据通讯支持,数据处理服务对发送的请求信息依据数据库请求编码与解析技术进行信息的校正,如接收的请求信息有误会回执客户端错误信息提示,请求信息准确完整则将解析信息交至数据库信息处理服务;
11)信息通讯
信息通讯是以C#异步通信技术作为基础,使用C#异步通信技术可以避免网络通信中的阻塞现象,中间件客户端在首次运行时会向服务端发送建立异步通信的连接请求,连接请求内容包括客户端IP地址以及通讯信息接收和发送端口,服务端解析接收的连接请求信息通过套接字与客户端建立信息通讯链接;
12)数据库请求编码与解析
在客户端中定义字符串对象;将数据库请求信息以可扩展标记语言XML形式填充至该字符串,依据可扩展标记语言XML的语法规则,数据库请求信息以如下的格式进行编码:
<CMD METHOD=“数据库请求类型(SELECT、DELETE、UPDATE)”>
数据库请求信息内容(结构化查询语言)
</CMD>
此方式改变以往以帧格式进行通信信息编解码,简化了通讯信息内容的制定的复杂度,使用XML可扩展标记语言技术中的XmlNode类方法读取节点内容,这样大大缩短编解码信息时间,对接收的信息进行相应语法规则的校对即可判定接收信息请求的完整性;
13)数据库请求信息处理
接收客户端发送的完整数据库请求,将接收的完整数据库请求信息依据请求时间的先后暂存入数据缓存中,服务端通过ODBC开放数据库互连技术创建数据库链接,并借助ODBC开放数据库互连技术中提供的OdbcCommand类ExecuteNonQuery方法,以ODBC开放数据库互连技术为基础,使用ExecuteNonQuery方法来执行多个数据库操作语句并返回数据库请求信息处理结果,这样大大提高了本服务端的数据库请求信息的处理能力,根据数据缓存中的数据库请求优先级别进行数据库相应操作,避免了多请求访问数据库造成的数据库访问效率的下降;
14)请求结果发送
将数据库请求结果以XML方式进行编码,<CMD TABLE=“表名”METHOD=“请求类型”>执行状态</CMD>为请求结果信息开始标志,如果数据请求操作正常则以<RES TABLE=“表名”>结果内容</RES>形式进行填充,通过创建与客户端的套接字链接发送至客户端应用程序。
如图3所示,一种分布式中间件与数据库的数据交互方法,其服务端工作方法,步骤如下:
15)服务端工作开始;
16)监听通讯端口;
17)判断是否监听到请求;若是,则进行下一步,否则转到步骤16)继续监听;
18)创建连接;
19)接受请求;
20)判断是否接受到请求,若是,则进行下一步,否则转到步骤19);
21)解码;
22)存入数据缓存器;
23)读取请求;
24)判断是否得到正确请求信息,若是,则进行下一步,否则转到步骤23);
25)访问数据库;
26)获取数据结果;
27)发送数据结果;
28)判断发送是否超时,若是,则进行下一步,否则转到步骤30);
29)发送成功;
30)丢弃数据包;
31)写入日志,转到步骤27),重新发送数据结果;
32)判断是否断开连接,若是,则进行下一步,否则转到步骤19);
33)断开连接;
34)结束工作。

Claims (3)

1、一种分布式中间件,由请求监听模块、请求接收模块、结果发送模块、数据缓存模块和数据访问模块组成
Figure A2009100184870002C1
其特征在于数据缓存模块分别和请求接收模块、结果发送模块及数据访问模块相连接;请求监听模块和请求接收模块相连接;结果发送模块和请求监听模块分别通过TCP/IP通信协议与应用程序相连接,以实现信息通信目的;数据访问模块通过ODBC技术和数据库相连接,以实现其和数据库的信息传送。
2、如权利要求1所述的一种分布式中间件与数据库的数据交互方法,步骤如下:
1)开始
2)发送、接收请求
所述中间件分客户端和服务端两部分,在服务端指定端口创建客户端发送数据库操作请求监听程序,针对接收到客户端请求信息创建其对应的数据处理服务,网络连接状态的判定为系统提供基础数据通讯支持,数据处理服务对发送的请求信息依据本发明的数据库请求编码与解析技术进行信息的校正,如接收的请求信息有误会回执客户端错误信息提示,请求信息准确完整则将解析信息交至数据库信息处理服务;
3)信息通讯
信息通讯是以C#异步通信技术作为基础,使用C#异步通信技术可以避免网络通信中的阻塞现象,本中间件客户端在首次运行时会向服务端发送建立异步通信的连接请求,连接请求内容包括客户端IP地址以及通讯信息接收和发送端口,服务端解析接收的连接请求信息通过套接字与客户端建立信息通讯链接;
4)数据库请求编码与解析
在客户端中定义字符串对象;将数据库请求信息以可扩展标记语言XML形式填充至该字符串,依据可扩展标记语言XML的语法规则,数据库请求信息以如下的格式进行编码:
<CMD METHOD=“数据库请求类型(SELECT、DELETE、UPDATE)”>
数据库请求信息内容
</CMD>
使用XML可扩展标记语言技术中的XmlNode类方法读取节点内容,对接收的信息进行相应语法规则的校对即能判定接收信息请求的完整性;
5)数据库请求信息处理
接收客户端发送的完整数据库请求,将接收的完整数据库请求信息依据请求时间的先后暂存入数据缓存中,服务端通过ODBC开放数据库互连技术创建数据库链接,并借助ODBC开放数据库互连技术中提供的OdbcCommand类ExecuteNonQuery方法,以ODBC开放数据库互连技术为基础,使用ExecuteNonQuery方法来执行多个数据库操作语句并返回数据库请求信息处理结果,根据数据缓存中的数据库请求优先级别进行数据库相应操作;
6)请求结果发送
将数据库请求结果以XML方式进行编码,<CMD TABLE=“表名”METHOD=“请求类型”>执行状态</CMD>为请求结果信息开始标志,如果数据请求操作正常则以<RES TABLE=“表名”>结果内容</RES>形式进行填充,通过创建与客户端的套接字链接发送至客户端应用程序。
3、如权利要求1所述的一种分布式中间件与数据库的数据交互方法,其服务端工作方法,步骤如下:
1)服务端工作开始;
2)监听通讯端口;
3)判断是否监听到请求;若是,则进行下一步,否则转到步骤2)继续监听;
4)创建连接;
5)接受请求;
6)判断是否接受到请求,若是,则进行下一步,否则转到步骤5);
7)解码;
8)存入数据缓存器;
9)读取请求;
10)判断是否得到正确请求信息,若是,则进行下一步,否则转到步骤9);
11)访问数据库;
12)获取数据结果;
13)发送数据结果;
14)判断发送是否超时,若是,则进行下一步,否则转到步骤17);
15)丢弃数据包;
16)写入日志,转到步骤13),重新发送数据结果;
17)发送成功;
18)判断是否断开连接,若是,则断开连接,结束工作;否则转到步骤5)。
CN2009100184875A 2009-09-29 2009-09-29 一种分布式中间件与数据库数据交互方法 Expired - Fee Related CN101661494B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100184875A CN101661494B (zh) 2009-09-29 2009-09-29 一种分布式中间件与数据库数据交互方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100184875A CN101661494B (zh) 2009-09-29 2009-09-29 一种分布式中间件与数据库数据交互方法

Publications (2)

Publication Number Publication Date
CN101661494A true CN101661494A (zh) 2010-03-03
CN101661494B CN101661494B (zh) 2012-06-20

Family

ID=41789520

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100184875A Expired - Fee Related CN101661494B (zh) 2009-09-29 2009-09-29 一种分布式中间件与数据库数据交互方法

Country Status (1)

Country Link
CN (1) CN101661494B (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102123036A (zh) * 2011-01-06 2011-07-13 河南科技大学 一种分布式应用处理系统数据同步处理方法
CN102185896A (zh) * 2011-04-14 2011-09-14 上海红神信息技术有限公司 面向云服务的远端文件请求感知装置及方法
CN102375825A (zh) * 2010-08-13 2012-03-14 捷达世软件(深圳)有限公司 流程整合服务器及利用其实现系统整合的方法
CN102566987A (zh) * 2010-12-13 2012-07-11 江苏佰腾科技有限公司 创造分布式部署的反射式AjaxPro调用框架的方法
CN103338118A (zh) * 2013-06-04 2013-10-02 北京搜狐新媒体信息技术有限公司 一种通信网络连接方法及装置
CN104102489A (zh) * 2014-07-24 2014-10-15 深圳市神州通在线科技有限公司 一种第三方数据库app构建系统及构建方法
CN104753860A (zh) * 2013-12-27 2015-07-01 上海宝信软件股份有限公司 基于中间件的网络服务系统
CN104935619A (zh) * 2014-03-20 2015-09-23 上海宝信软件股份有限公司 基于中间件的网络服务方法
CN105074693A (zh) * 2012-10-25 2015-11-18 沃克阅读技术公司 语句解析校正系统
CN105989070A (zh) * 2015-02-10 2016-10-05 阿里巴巴集团控股有限公司 从中间件请求数据的方法、系统及中间件客户端
CN106326256A (zh) * 2015-06-26 2017-01-11 中兴通讯股份有限公司 一种数据库访问方法及装置
CN106775616A (zh) * 2016-11-10 2017-05-31 中国电子科技集团公司第二十八研究所 基于C++与Java混合编程的分布式服务系统
CN107016031A (zh) * 2016-12-20 2017-08-04 常州市善松信息科技有限公司 一种数据中心中间件系统
CN107273052A (zh) * 2017-06-16 2017-10-20 郑州云海信息技术有限公司 一种存储设备管理方法、装置及系统
CN107508910A (zh) * 2017-09-20 2017-12-22 郑州云海信息技术有限公司 一种管理存储设备的方法及Middleware层
CN107798000A (zh) * 2016-08-29 2018-03-13 上海宝信软件股份有限公司 基于实时数据库的数据迁移压缩同步中间件
CN108595971A (zh) * 2018-04-25 2018-09-28 杭州闪捷信息科技股份有限公司 一种数据库自适应加密方法
CN109117152A (zh) * 2018-07-26 2019-01-01 新华三大数据技术有限公司 服务生成系统及方法
CN109284327A (zh) * 2018-11-26 2019-01-29 杭州安恒信息技术股份有限公司 通过模拟数据库连接驱动包扫描数据库类型的方法及装置
CN111090530A (zh) * 2019-12-09 2020-05-01 维沃移动通信有限公司 一种分布式跨进程间通信总线系统
US10650089B1 (en) 2012-10-25 2020-05-12 Walker Reading Technologies Sentence parsing correction system
TWI706259B (zh) * 2014-06-18 2020-10-01 香港商阿里巴巴集團服務有限公司 資料的查詢方法及查詢裝置
CN113127546A (zh) * 2019-12-30 2021-07-16 中国移动通信集团湖南有限公司 一种数据的处理方法、装置及电子设备
CN113242312A (zh) * 2021-05-26 2021-08-10 西安热工研究院有限公司 一种电力实时数据传输中间件及异步数据访问的方法
CN114172877A (zh) * 2021-11-11 2022-03-11 欧冶云商股份有限公司 一种基于http协议的中间件数据传输方法、装置、设备及存储介质
CN116881304A (zh) * 2023-07-25 2023-10-13 连云港电子口岸信息发展有限公司 基于分布式edi的api网关编排管理系统及方法

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102375825A (zh) * 2010-08-13 2012-03-14 捷达世软件(深圳)有限公司 流程整合服务器及利用其实现系统整合的方法
CN102566987A (zh) * 2010-12-13 2012-07-11 江苏佰腾科技有限公司 创造分布式部署的反射式AjaxPro调用框架的方法
CN102123036A (zh) * 2011-01-06 2011-07-13 河南科技大学 一种分布式应用处理系统数据同步处理方法
CN102123036B (zh) * 2011-01-06 2013-10-09 河南科技大学 一种分布式应用处理系统数据同步处理方法
CN102185896B (zh) * 2011-04-14 2014-02-19 上海红神信息技术有限公司 面向云服务的远端文件请求感知装置及方法
CN102185896A (zh) * 2011-04-14 2011-09-14 上海红神信息技术有限公司 面向云服务的远端文件请求感知装置及方法
CN105074693A (zh) * 2012-10-25 2015-11-18 沃克阅读技术公司 语句解析校正系统
CN105074693B (zh) * 2012-10-25 2018-06-12 沃克阅读技术公司 语句解析校正系统
US9940317B2 (en) 2012-10-25 2018-04-10 Walker Reading Technologies, Inc. Sentence parsing correction system
US10650089B1 (en) 2012-10-25 2020-05-12 Walker Reading Technologies Sentence parsing correction system
CN103338118A (zh) * 2013-06-04 2013-10-02 北京搜狐新媒体信息技术有限公司 一种通信网络连接方法及装置
CN103338118B (zh) * 2013-06-04 2016-09-14 北京搜狐新媒体信息技术有限公司 一种通信网络连接方法及装置
CN104753860A (zh) * 2013-12-27 2015-07-01 上海宝信软件股份有限公司 基于中间件的网络服务系统
CN104753860B (zh) * 2013-12-27 2019-06-28 上海宝信软件股份有限公司 基于中间件的网络服务系统
CN104935619A (zh) * 2014-03-20 2015-09-23 上海宝信软件股份有限公司 基于中间件的网络服务方法
CN104935619B (zh) * 2014-03-20 2018-07-03 上海宝信软件股份有限公司 基于中间件的网络服务方法
TWI706259B (zh) * 2014-06-18 2020-10-01 香港商阿里巴巴集團服務有限公司 資料的查詢方法及查詢裝置
CN104102489A (zh) * 2014-07-24 2014-10-15 深圳市神州通在线科技有限公司 一种第三方数据库app构建系统及构建方法
CN105989070B (zh) * 2015-02-10 2020-01-17 阿里巴巴集团控股有限公司 从中间件请求数据的方法、系统及中间件客户端
CN105989070A (zh) * 2015-02-10 2016-10-05 阿里巴巴集团控股有限公司 从中间件请求数据的方法、系统及中间件客户端
CN106326256A (zh) * 2015-06-26 2017-01-11 中兴通讯股份有限公司 一种数据库访问方法及装置
CN107798000A (zh) * 2016-08-29 2018-03-13 上海宝信软件股份有限公司 基于实时数据库的数据迁移压缩同步中间件
CN106775616A (zh) * 2016-11-10 2017-05-31 中国电子科技集团公司第二十八研究所 基于C++与Java混合编程的分布式服务系统
CN107016031A (zh) * 2016-12-20 2017-08-04 常州市善松信息科技有限公司 一种数据中心中间件系统
CN107273052A (zh) * 2017-06-16 2017-10-20 郑州云海信息技术有限公司 一种存储设备管理方法、装置及系统
CN107508910A (zh) * 2017-09-20 2017-12-22 郑州云海信息技术有限公司 一种管理存储设备的方法及Middleware层
CN108595971A (zh) * 2018-04-25 2018-09-28 杭州闪捷信息科技股份有限公司 一种数据库自适应加密方法
CN109117152B (zh) * 2018-07-26 2022-02-25 新华三大数据技术有限公司 服务生成系统及方法
CN109117152A (zh) * 2018-07-26 2019-01-01 新华三大数据技术有限公司 服务生成系统及方法
CN109284327A (zh) * 2018-11-26 2019-01-29 杭州安恒信息技术股份有限公司 通过模拟数据库连接驱动包扫描数据库类型的方法及装置
CN111090530A (zh) * 2019-12-09 2020-05-01 维沃移动通信有限公司 一种分布式跨进程间通信总线系统
CN111090530B (zh) * 2019-12-09 2024-03-05 维沃移动通信有限公司 一种分布式跨进程间通信总线系统
CN113127546A (zh) * 2019-12-30 2021-07-16 中国移动通信集团湖南有限公司 一种数据的处理方法、装置及电子设备
CN113242312A (zh) * 2021-05-26 2021-08-10 西安热工研究院有限公司 一种电力实时数据传输中间件及异步数据访问的方法
CN114172877A (zh) * 2021-11-11 2022-03-11 欧冶云商股份有限公司 一种基于http协议的中间件数据传输方法、装置、设备及存储介质
CN114172877B (zh) * 2021-11-11 2024-01-26 欧冶云商股份有限公司 一种基于http协议的中间件数据传输方法、装置、设备及存储介质
CN116881304A (zh) * 2023-07-25 2023-10-13 连云港电子口岸信息发展有限公司 基于分布式edi的api网关编排管理系统及方法
CN116881304B (zh) * 2023-07-25 2024-03-22 连云港电子口岸信息发展有限公司 基于分布式edi的api网关编排管理系统及方法

Also Published As

Publication number Publication date
CN101661494B (zh) 2012-06-20

Similar Documents

Publication Publication Date Title
CN101661494B (zh) 一种分布式中间件与数据库数据交互方法
US11625414B2 (en) Method and system for transparent interoperability between applications and data management systems
CN107766526B (zh) 数据库访问方法、装置及系统
AU648113B2 (en) Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes
Hummer et al. Elastic stream processing in the cloud
US20130262425A1 (en) Techniques to perform in-database computational programming
CN103473696A (zh) 一种收集、分析和分发网络商业信息的方法和系统
CN103455540A (zh) 从数据仓库模型生成内存模型的系统和方法
CN103338135A (zh) 一种集群存储容量的实时监控方法
CN111381983A (zh) 虚拟试验靶场验证系统的轻量级消息中间件系统及方法
CN105354328B (zh) 一种解决NoSQL数据库并发访问冲突的系统及方法
CN102981857A (zh) 数据库集群的并行压缩海量数据装载方法
Valvåg et al. Cogset: a high performance MapReduce engine
CN101789944A (zh) 多功能电能表通信协议栈的开发系统
US20030055921A1 (en) Method and apparatus for reengineering legacy systems for seamless interaction with distributed component systems
CN102664952A (zh) 一种对嵌入式设备集群管理及监控的方法
CN109829094A (zh) 分布式爬虫系统
US20170131980A1 (en) Model driven architecture for network management and configuration
CN106570151A (zh) 一种海量文件的数据收集处理方法及系统
CN105528424B (zh) 大数据环境下实现数据持久化的系统及方法
US20240036910A1 (en) Meta-level management system that aggregates information and functionalities of computational-resource management systems and that provides new management functionalities
Tešanovic et al. Embedded databases for embedded real-time systems: A component-based approach
CN1932760B (zh) 用于运行应用程序的系统和方法
CN114185695A (zh) 基于工业app微服务的松耦合数据处理方法和系统
Molojicic et al. Concurrency: a case study in remote tasking and distributed TPC in Mach

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120620

Termination date: 20170929