CN102868608A - 一种基于消息机制的企业服务总线系统 - Google Patents

一种基于消息机制的企业服务总线系统 Download PDF

Info

Publication number
CN102868608A
CN102868608A CN2012103234473A CN201210323447A CN102868608A CN 102868608 A CN102868608 A CN 102868608A CN 2012103234473 A CN2012103234473 A CN 2012103234473A CN 201210323447 A CN201210323447 A CN 201210323447A CN 102868608 A CN102868608 A CN 102868608A
Authority
CN
China
Prior art keywords
message
service
request
service request
isp
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.)
Pending
Application number
CN2012103234473A
Other languages
English (en)
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.)
Jiangsu University
Original Assignee
Jiangsu University
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 Jiangsu University filed Critical Jiangsu University
Priority to CN2012103234473A priority Critical patent/CN102868608A/zh
Publication of CN102868608A publication Critical patent/CN102868608A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

.一种基于消息机制的企业服务总线系统,包括:消息通道,用于接受服务请求者发送的源服务消息请求,并通过消息总线将服务消息请求传递到消息聚合器;消息总线,为消息组件协同的总线结构;消息聚合器,用于接收所述源服务消息请求,并识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,组成整合服务请求消息;消息分解器,用于将收到的所述整合服务请求消息中的每个服务请求分解出来,形成若干新服务请求消息;消息重排器,用于接受消息分解器发来的新服务请求消息,并给每个新服务请求消息添加消息标识码;消息路由器,用于根据服务内容将每条所述新服务消息请求发送给正确的服务提供者。

Description

一种基于消息机制的企业服务总线系统
技术领域
本发明属于软件的企业应用集成技术领域,尤其涉及一种基于消息机制的企业服务总线路由实现方法及系统。
背景技术
随着企业信息化技术的不断发展,企业信息系统变得越来越复杂。各种不同的系统结合在一起,它们之间的信息交换比较困难,这也就变成了一个个信息孤岛。如何有效实现企业2内部信息系统互相连接和资源共享,成为企业应用集成(EAI)的一大难题。
根据权威研究机构Forrester的研究报告表示,在当下云计算风靡IT领域的时候,大多数企业却仍在使用SOA(service-oriented architecture)实现其企业集成,并感到满意。而支撑SOA的关键技术ESB(Enterprise Service Bus),由于其松散耦合、可扩展和平台异构型等良好的特性,成为当前企业应用集成的主流技术。
目前,大多数企业服务总线中消息路由的实现方式仍是静态的,当服务数量增加时,导致效率的低下以及可靠性的降低。而当前的一些动态路由模型中存在一定的不足,并没有充分实现路由动态的特点。
有鉴于此,有必要提供一种基于消息机制的企业服务总线系统以解决上述问题。
发明内容
本发明的目的在于克服现有技术的缺陷,提供一种充分实现路由动态的特点,服务效率和可靠性高的基于消息机制的企业服务总线系统。
实现本发明目的的技术方案是:.一种基于消息机制的企业服务总线系统,包括:消息通道,用于接受服务请求者发送的源服务消息请求,并通过消息总线将服务消息请求传递到消息聚合器;消息总线,为消息组件协同的总线结构;
所述基于消息机制的企业服务总线系统还包括:
消息聚合器,用于接收所述源服务消息请求,并识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;
消息分解器,用于将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息,并发送至消息重排器;
消息重排器,用于接受消息分解器发来的新服务请求消息,并给每个新服务请求消息添加消息标识码,使服务消息请求能按指定的顺序发送到固定的消息路由器上;
消息路由器,用于根据服务内容将每条所述新服务消息请求发送给正确的服务提供者;
控制总线,用于对所述服务消息请求的传递进行控制以及监测消息组件。
作为本发明的进一步改进,所述消息重排器和消息路由器之间还设有线路消息分接器,用于将所述新服务消息请求进行支路分开,传递给消息路由器和消息总线。
作为本发明的进一步改进,所述消息路由器针对所述服务消息请求中的服务名称根据广度优先搜索算法寻找所述服务提供者。
作为本发明的进一步改进,所述控制总线还包括监测所述服务消息请求是否发送至对应的所述服务提供者的单元。
作为本发明的进一步改进,所述基于消息机制的企业服务总线系统执行下列步骤:
S1接收多个服务请求者发送的源消息服务请求;
S2.识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;
S3.将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息;
S4给每个新服务请求消息添加消息标识码,使服务消息请求能按指定的顺序发送;
S5.将接收的所述服务请求消息根据基于内容的处理算法,找到对应的服务提供者,并发送所述新服务请求消息。
作为本发明的进一步改进,所述S5之后还包括:
S6.监测服务提供者是否将服务发送给服务请求者。所述S6具体包括:
如果所述服务提供者在设定的系统时间内成功返回响应消息,则表示本次服务调用成功,控制总线结束监测过程,发送响应消息给所述服务请求者,本次服务调用结束;
如果控制总线没有在设定的系统时间内接受到第一个服务提供者返回的响应消息,则认为该服务提供者工作异常或失效,控制总线修改该服务单元在消息路由器中的工作状态记录,启动下一个的服务监测,直到接收到服务提供者返回的响应消息或服务器列表中的所有服务提供者全部调用完为止。
本发明中,路由主要是针对消息路由的可靠性以及高效性方面设计的,且实现较为简单,满足一些企业的对于ESB的需求。它的工作原理是将路由模型抽象成从多个服务请求者到多个服务提供者的消息序列,然后对消息序列分解,聚合,以及消息排序。
本发明通过消息路由器来找到服务提供者,同时控制总线监测整个过程的执行,并监测服务提供者将消息发布给服务请求者,增加了路由的可靠性。
附图说明
图1为本发明一实施方式中基于消息机制的企业服务总线路由实现系统的总体结构图。
图2为本发明一实施方式中基于消息机制的企业服务总线路由实现系统的结构示意图。
图3为本发明一实施方式中基于消息机制的企业服务总线路由实现方法的工作流程图。
具体实施方式
以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
参图1所示为本发明优选实施方式中基于消息机制的企业服务总线路由实现系统总体结构图,借助信息化服务平台,用户可以通过应用客户端访问逻辑服务,请求服务平台的功能。客户端的服务请求者发送消息请求经过消息总线到达消息通道,消息经过消息分解器,重排器等的处理,依据服务名,源地址,目的地址等内容,整合成新的消息,然后在消息路由器中,根据广度优先搜索算法,找出合适的服务提供者。
结合图2所示,本实施方式中的基于消息机制的企业服务总线系统包括:
消息通道10,用于接受服务请求者发送的源服务消息请求,并通过消息总线将服务消息请求传递到消息聚合器;例如,源服务请求消息为{a,A,80},{a,B,20},{a,C,69};{b,A,80},{b,B,20},{b,C,69},其中a,b,c为源,A、B、C为某服务请求内容,例如HTTP、FTP等,80、20、69为源请求的端口号。
消息总线20,为消息组件协同的总线结构;
消息聚合器30,用于接收所述源服务消息请求,并识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;经过消息聚合器30,源服务消息请求整合成一个整合服务请求消息:{a,{(A,80),(B,20),(C,69)}{b,{(A,53),(B,80),(C,69)}}。
消息分解器40,用于将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息,并发送至消息重排器;通过消息分解器,整合服务请求消息将变成3个新服务请求消息,{{(a,80),(b,20)},A},{{(a,20)(b,20)},B},{{(a,69),(b,69)},C},3个消息中的服务请求内容分别为A、B、C。
消息重排器50,用于接受消息分解器发来的新服务请求消息,并给每个新服务请求消息添加消息标识码,使服务消息请求能按指定的顺序发送到线路消息分接器60上;
线路消息分接器60,用于将所述新服务消息请求进行支路分开,传递给消息路由器70和消息总线80;
消息路由器70,用于根据服务内容,通过广度优先搜索算法寻找所述服务提供者,将每条新服务消息请求发送给正确的服务提供者;
控制总线80,用于对所述服务消息请求的传递进行控制以及监测消息组件。其中,控制总线80还包括监测服务提供者是否将服务发送给服务请求者的单元,该单元具体包括:如果所述服务提供者在设定的系统时间内成功返回响应消息,则表示本次服务调用成功,控制总线结束监测过程,发送响应消息给所述服务请求者,本次服务调用结束的单元;
如果控制总线没有在设定的系统时间内接受到第一个服务提供者返回的响应消息,则认为该服务提供者工作异常或失效,控制总线修改该服务单元在消息路由器中的工作状态记录,启动下一个的服务监测,直到接收到服务提供者返回的响应消息或服务器列表中的所有服务提供者全部调用完为止的单元。
本发明不同于其它的企业服务总线动态路由,系统同时监测服务提供者将服务发送给服务请求者。
优选地,在本实施方式中服务消息的格式是XML消息,消息聚合器30可以得到的服务请求消息如下:
<?xml version=”1.0”encoding=”UTF-8”?>
<services>
<date>27/12/2011</date>
<ip>192.168.10.12</ip>
<id>210462655</id>
<service>
<name>HTTP</name>
<port>80</port>
</service>
<service>
<name>DNS</name>
<port>53</port>
</service>
</services>
消息分解器40将/services/service目录下的每个服务消息分解出来,与date、ip、id对应在一起,重新组成单独的服务消息。消息聚合器30则将具有相同的服务请求内容的所有服务消息聚合在一起,将它们整合成一条消息。当消息到达消息路由器70时,消息路由器70从XML中取出源消息,并根据消息所请求的服务,通过广度优先搜索算法,搜索对应的服务提供者。消息系统是基于事件驱动的,其核心处理的代码描述如下:
Figure BDA00002096664700051
对应地,结合图3所示,一种基于消息机制的企业服务总线系统执行程序如下:
S1.接收多个服务请求者发送的消息服务请求;
S2.识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;
S3.将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息;
S4给每个新服务请求消息添加消息标识码,使新服务消息请求能按指定的顺序发送;
S5.对新服务请求消息根据基于内容的处理算法,找到对应的服务提供者,并发送新服务请求消息;
S6.监测服务提供者是否将服务发送给服务请求者。该步骤具体包括:
如果服务提供者在设定的系统时间内成功返回响应消息,则表示本次服务调用成功,结束监测过程,发送响应消息给所述服务请求者,本次服务调用结束;如果系统没有在设定的系统时间内接受到第一个服务提供者返回的响应消息,则认为该服务提供者工作异常或失效,控制总线修改该服务单元在消息路由器中的工作状态记录,启动下一个的服务监测,直到接收到服务提供者返回的响应消息或服务器列表中的所有服务提供者全部调用完为止。
与现有技术相比,本发明基于消息机制的企业服务总线系统,针对路由的可靠性以及高效性,将路由模型抽象成从多个服务请求者到多个服务提供者的消息序列,然后对消息序列分解、聚合以及消息排序,通过消息路由器来找到服务提供者,同时控制总线监测整个过程的执行,并监测服务提供者将消息发布给服务请求者,增加了路由的可靠性,且实现简单,满足一些企业的对于ESB的需求。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其它实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

Claims (7)

1.一种基于消息机制的企业服务总线系统,包括:消息通道,用于接受服务请求者发送的源服务消息请求,并通过消息总线将服务消息请求传递到消息聚合器;消息总线,为消息组件协同的总线结构;
其特征在于,所述基于消息机制的企业服务总线系统还包括:
消息聚合器,用于接收所述源服务消息请求,并识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;
消息分解器,用于将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息,并发送至消息重排器;
消息重排器,用于接受消息分解器发来的新服务请求消息,并给每个新服务请求消息添加消息标识码,使服务消息请求能按指定的顺序发送到固定的消息路由器上;
消息路由器,用于根据服务内容将每条所述新服务消息请求发送给正确的服务提供者;
控制总线,用于对所述服务消息请求的传递进行控制以及监测消息组件。
2.根据权利要求1所述的基于消息机制的企业服务总线系统,其特征在于,所述消息重排器和消息路由器之间还设有线路消息分接器,用于将所述新服务消息请求进行支路分开,传递给消息路由器和消息总线。
3.根据权利要求1所述的基于消息机制的企业服务总线系统,其特征在于,所述消息路由器针对所述服务消息请求中的服务名称根据广度优先搜索算法寻找所述服务提供者。
4.根据权利要求1所述的基于消息机制的企业服务总线系统,其特征在于,所述控制总线还包括监测所述服务消息请求是否发送至对应的所述服务提供者的单元。
5.根据权利要求1所述的基于消息机制的企业服务总线系统,其特征在于,所述基于消息机制的企业服务总线系统执行下列步骤:
S1.接收多个服务请求者发送的源消息服务请求;
S2.识别出多个所述源服务消息请求中相关联的特征,将具有相关联的特征的源服务消息请求分别组合在一起,形成若干消息组,若干消息组组成整合服务请求消息;
S3. 将收到的所述整合服务请求消息中的每个服务请求分解出来,将具有相同的服务请求内容的服务请求分别与各自date、ip、id对应在一起,形成若干新服务请求消息;
S4给每个新服务请求消息添加消息标识码,使服务消息请求能按指定的顺序发送;
S5.将接收的所述服务请求消息根据基于服务请求内容的处理算法,找到对应的服务提供者,并发送所述新服务请求消息。
6.根据权利要求4所述的基于消息机制的企业服务总线系统,其特征在于,所述S5之后还包括:
S6.监测服务提供者是否将服务发送给服务请求者。
7.根据权利要求5所述的基于消息机制的企业服务总线系统,其特征在于,所述S6具体包括:
如果所述服务提供者在设定的系统时间内成功返回响应消息,则表示本次服务调用成功,控制总线结束监测过程,发送响应消息给所述服务请求者,本次服务调用结束;
如果控制总线没有在设定的系统时间内接受到第一个服务提供者返回的响应消息,则认为该服务提供者工作异常或失效,控制总线修改该服务单元在消息路由器中的工作状态记录,启动下一个的服务监测,直到接收到服务提供者返回的响应消息或服务器列表中的所有服务提供者全部调用完为止。
CN2012103234473A 2012-09-04 2012-09-04 一种基于消息机制的企业服务总线系统 Pending CN102868608A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012103234473A CN102868608A (zh) 2012-09-04 2012-09-04 一种基于消息机制的企业服务总线系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012103234473A CN102868608A (zh) 2012-09-04 2012-09-04 一种基于消息机制的企业服务总线系统

Publications (1)

Publication Number Publication Date
CN102868608A true CN102868608A (zh) 2013-01-09

Family

ID=47447211

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012103234473A Pending CN102868608A (zh) 2012-09-04 2012-09-04 一种基于消息机制的企业服务总线系统

Country Status (1)

Country Link
CN (1) CN102868608A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103957188A (zh) * 2014-03-24 2014-07-30 浪潮集团山东通用软件有限公司 一种对称的双向解耦的企业服务描述方法及服务调度系统
CN103997509A (zh) * 2013-02-20 2014-08-20 中国移动通信集团北京有限公司 一种基于面向服务的体系结构的服务处理方法及装置
CN107809362A (zh) * 2017-11-15 2018-03-16 深圳四方精创资讯股份有限公司 企业服务总线的配置方法及其系统
CN109842646A (zh) * 2017-11-27 2019-06-04 北京京东尚科信息技术有限公司 网络请求的处理方法和装置
CN113452703A (zh) * 2021-06-28 2021-09-28 平安证券股份有限公司 组合通信请求响应方法、装置、电子设备及可读存储介质
CN114650252A (zh) * 2022-03-25 2022-06-21 华润数字科技(深圳)有限公司 基于企业服务总线的路由方法、装置及计算机设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090064271A1 (en) * 2007-08-29 2009-03-05 International Business Machines Corporation Filtering policies for data aggregated by an esb
CN102025653A (zh) * 2010-06-04 2011-04-20 西本新干线股份有限公司 企业服务总线及企业服务总线的消息处理方法
CN102387075A (zh) * 2011-10-18 2012-03-21 成都康赛电子科大信息技术有限责任公司 面向企业服务总线的动态服务路由方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090064271A1 (en) * 2007-08-29 2009-03-05 International Business Machines Corporation Filtering policies for data aggregated by an esb
CN102025653A (zh) * 2010-06-04 2011-04-20 西本新干线股份有限公司 企业服务总线及企业服务总线的消息处理方法
CN102387075A (zh) * 2011-10-18 2012-03-21 成都康赛电子科大信息技术有限责任公司 面向企业服务总线的动态服务路由方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宓学强: "具有动态服务中介能力的企业服务总线的设计与实现", 《中国优秀硕士学位论文全文数据库,信息科技辑》, 15 November 2010 (2010-11-15) *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103997509A (zh) * 2013-02-20 2014-08-20 中国移动通信集团北京有限公司 一种基于面向服务的体系结构的服务处理方法及装置
CN103997509B (zh) * 2013-02-20 2017-10-10 中国移动通信集团北京有限公司 一种基于面向服务的体系结构的服务处理方法及装置
CN103957188A (zh) * 2014-03-24 2014-07-30 浪潮集团山东通用软件有限公司 一种对称的双向解耦的企业服务描述方法及服务调度系统
CN103957188B (zh) * 2014-03-24 2018-03-27 浪潮通用软件有限公司 一种对称的双向解耦的企业服务描述方法及服务调度系统
CN107809362A (zh) * 2017-11-15 2018-03-16 深圳四方精创资讯股份有限公司 企业服务总线的配置方法及其系统
CN107809362B (zh) * 2017-11-15 2020-10-23 深圳四方精创资讯股份有限公司 企业服务总线的配置方法及其系统
CN109842646A (zh) * 2017-11-27 2019-06-04 北京京东尚科信息技术有限公司 网络请求的处理方法和装置
CN113452703A (zh) * 2021-06-28 2021-09-28 平安证券股份有限公司 组合通信请求响应方法、装置、电子设备及可读存储介质
CN114650252A (zh) * 2022-03-25 2022-06-21 华润数字科技(深圳)有限公司 基于企业服务总线的路由方法、装置及计算机设备
CN114650252B (zh) * 2022-03-25 2023-11-21 华润数字科技(深圳)有限公司 基于企业服务总线的路由方法、装置及计算机设备

Similar Documents

Publication Publication Date Title
KR101926394B1 (ko) 클라우드 컴퓨팅 시스템 및 클라우드 시스템에서의 부하 분리 방법
KR102004160B1 (ko) 사물인터넷 환경에서 클라이언트 식별자를 이용하여 클라이언트 노드들을 논리적으로 그룹화하는 장치 및 방법
EP3590248B1 (en) Data loss prevention using category-directed parsers
US8244908B2 (en) System, method and program for distributed event detection
CN102868608A (zh) 一种基于消息机制的企业服务总线系统
Yang et al. Performance evaluation of multi-stratum resources integration based on network function virtualization in software defined elastic data center optical interconnect
EP3905583B1 (en) Multicast encryption scheme for data-ownership platform
US10091283B2 (en) Distributed scheduling systems for digital magazine
CN110505074B (zh) 一种应用模块化集成方法和装置
JP2014531072A (ja) 多数のデバイスへのイベントの配信
US9009352B1 (en) Transformation of common information model messages
CN113452600A (zh) 跨地域的消息通信方法、装置、电子设备和存储介质
US11381665B2 (en) Tracking client sessions in publish and subscribe systems using a shared repository
CN109831385B (zh) 一种消息处理方法、装置及电子设备
CN110278133B (zh) 由服务器执行的检查方法、装置、计算设备以及介质
US9094740B2 (en) Architecture to scale an IP/MPLS network via multiple network planes
WO2013037216A1 (zh) 一种移动社交网络的离线管理方法及系统
Deogirikar et al. An improved publish-subscribe method in application layer protocol for iot
CN115023925B (zh) 度量和事件基础设施
Schaaf et al. The OM4SPACE Activity Service-A semantically well-defined cloud-based event notification middleware
Deogirikar et al. A comprehensive development and testing of improved publish-subscribe method for IoT
Liao et al. Efficient provisioning of hybrid virtual network with stochastic resource demands
KR20180031216A (ko) 저전력 블루투스 어댑터 및 그를 이용한 데이터 교환 시스템
CN116089125A (zh) 分布式消息队列系统、消息发布方法及消息接收方法
Gifre et al. Interfaces for Monitoring and Data Analytics Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C05 Deemed withdrawal (patent law before 1993)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130109