消息路由方法及消息路由装置的制作方法

文档序号:6580123阅读:127来源:国知局
专利名称:消息路由方法及消息路由装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种消息路由方法及消息路由装置。
背景技术
目前,消息路由的方法为,通过消息中间件与服务地址注册来配合实现。如图 1所示,一个服务注册中心(Service Registry Center)注册有多个消息接收主体(消息接收 主体A、B、C)的服务地址信息,服务注册中心提供给消息中间件数据查询接口,每次 消息中间件接收到请求消息,消息中间件都要向服务注册中心查询消息接收主体的服务 地址,找到与该请求消息匹配的服务地址之后,再将该请求消息路由到相应的消息接收 主体。在实现本发明过程中,发明人发现现有技术中至少存在如下问题由于服务注册中心的数据查询接口通常是基于一定标准的,如UDDI(UniVerSal Description, Discovery, and Integration, UDDI,统一描述、发现和集成),这些标准提
供按照服务注册数据的一些预定特征值(例如服务接口名、服务数据版本号等)进行查 询,存在查询条件受限制的缺陷。

发明内容
本发明的实施例提供了一种消息路由方法及消息路由装置,基于消息内容进行 路由,路由策略的配置灵活。一种消息路由方法,包括利用包含有路由策略的可扩展标记语言XML转换语言,对XML消息的内容进 行XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内容进行 XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言包括可扩 展样式语言XSL ;根据所述目标消息,将所述XML消息路由到消息接收主体。一种消息路由装置,包括转换单元,利用包含有路由策略的可扩展标记语言XML转换语言,对XML消 息的内容进行XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息 的内容进行XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语 言包括可扩展样式语言XSL ;路由单元,用于根据所述目标消息,将所述XML消息路由到消息接收主体。由上述本发明的实施例提供的技术方案可以看出,由于XML转换语言可以设置 对XML消息的内容进行的各种运算,这样可以灵活的配置路由策略,实现基于XML消 息内容进行路由。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图 获得其他的附图。图1为现有技术中消息路由方法原理示意图;图2为本发明实施例的消息路由方法的流程示意图一;图3为本发明实施例的消息路由装置的构成示意图一;图4为本发明实施例的消息路由装置的构成示意图二 ;图5为本发明实施例的消息路由方法的应用流程示意图一;图6为本发明实施例的消息路由方法的应用流程示意图二 ;图7为本发明实施例的消息路由装置的应用示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、 完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施 例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得 的所有其他实施例,都属于本发明保护的范围。XML (Extensible Markup Language,可扩展标记语言),用于描述数据,主要是
通过XML的元素值表示数据内容。XSL (Extensible Stylesheet Language,可扩展样式语言),用于定义 XML 的转换 规则以及转换结果,以可读格式呈现XML数据,属于XML转换语言。通过XSLT(XSL Transformations,可扩展样式语言转换),能够将XML转换为任意格式的文本或消息,如 HTML (Hypertext MarkedLanguage,超文本标i己语言,CSV (Comma Separated values,用
来存储数据的纯文本文件),等等。XPath(导航语言),用于利用XSL进行XML转换时,对XML的元素值做查
询、遍历、排序以及一些逻辑运算。基于现有技术中,消息路由方法,查询条件受限制,不能根据变化的消息内容 进行查询的缺陷。本发明实施例提供一种消息路由方法及消息路由装置,由于XML转换 语言可以设置对XML消息的内容进行的各种运算,这样可以灵活的配置路由策略,实现 基于XML消息内容进行路由。实施例一如图2所示,本发明实施例提供一种消息路由方法,包括步骤21、利用包含有路由策略的XML转换语言,对XML消息的内容进行XML 转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内容进行XML转 换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言包括可扩展样式
不口曰 XSL。步骤22、根据目标消息,将XML消息 路由到消息接收主体。XML转换语言可以包括XSL。
由上可知,由于XML转换语言XSL可以设置对XML消息的内容进行的各种运 算,这样可以灵活的配置路由策略,实现基于XML消息内容进行路由。可选的,本发明实施例的消息路由方法,得包含有路由策略的XML转换语言, 可以包括根据对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目
标消息,将路由策略设置在XML转换语言中。具体可以是,将路由策略设置在XSL中。可以理解的是,路由策略变更时,对 应变更XSL的设置,即可改变XML消息的路由。可选的,本发明实施例的消息路由方法 ,当目标消息为消息接收主体的路由 地址时,可以根据路由地址,将XML消息路由到消息接收主体。路由地址可以为 URL(Uniform Resource Locator,统一资源定位符)地址时。或者,当目标消息对应有消 息接收主体的路由地址时,则需要根据目标消息得到对应的路由地址,根据路由地址, 将XML消息路由到消息接收主体。当目标消息对应有消息接收主体的路由地址时,可以建立路由表,用于存储目 标消息及对应的消息接收主体的路由地址。也就是,对XML消息的内容进行XML转换 后,得到目标消息,通过路由表的映射能够得到消息接收主体的路由地址。利用路由表 的使用实现更灵活的路由可配,如某个消息接收主体的地址变化,只需要更改路由表中 消息接收主体的路由地址即可。进一步,本发明实施例的消息路由方法,XML转换时,利用XPath可以对XML
的元素值做查询、遍历、排序以及一些逻辑运算,使得可以更灵活的配置路由策略,实 现基于消息内容的路由策略。由上述本发明的实施例提供的技术方案可以看出,利用包含有路由策略的XML 转换语言XSL,对XML消息的内容进行XML转换,得到XML转换后的目标消息,路 由策略包含对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目 标消息。由于XML转换语言可以设置对XML消息的内容进行的各种运算,这样可以灵 活的配置路由策略,实现基于XML消息内容进行路由。而且,通过对XML消息的内容 进行XML转换,得到XML转换后的目标消息,即可以实现基于XML消息内容进行路 由。避免了现有技术中,每接收到请求消息,消息中间件要和服务注册中心交互一次, 导致影响系统效率,且易受到网络的影响的缺陷。实施例二如图3所示,本发明实施例提供一种消息路由装置,包括转换单元31,利用包含有路由策略的XML转换语言,对XML消息的内容进行 XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内容进行 XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言包括可扩
展样式语言XSL。路由单元32,用于根据目标消息,将XML消息路由到消息接收主体。由上可知,由于XML转换语言XSL可以设置对XML消息的内容进行的各种运 算,这样可以灵活的配置路由策略,实现基于XML消息内容进行路由。如图4所示,本发明实施例的消息路由装置,还可以包括
路由策略设置单元33,用于根据对XML消息的内容进行XML转换的运算规 贝U,以及XML转换后对应的目标消息,将路由策略设置在XML转换语言中。当基于XML消息的内容的路由策略变更时,对应变更路由策略设置单元33中 XML转换语言,即可改变XML消息的路由。可选的,路由单元32,可以包括 发送单元311,用于目标消息为消息接收主体的路由地址时,根据路由地址,将 XML消息路由到所述消息接收主体。路由表单元312,用于为目标消息配置并存储消息接收主体的路由地址。此时发 送单元311,用于从路由表单元确定出目标消息对应的消息接收主体的路由地址,根据路 由地址,将XML消息路由到所述消息接收主体。利用路由表单元312得到了路由表的使用实现更灵活的路由可配,如某个消息 接收主体的路由地址变化,只需要更改路由表中消息接收主体的路由地址即可。路由地 址可以为URL(Uniform Resource Locator,统一资源定位符)地址时。转换单元31的XML转换语言可以利用导航语言XPath,对XML的元素值做查
询、遍历、排序以及一些逻辑运算,使得可以更灵活的配置路由策略,实现基于消息内 容的路由策略。本发明实施例的消息路由装置,可以应用于消息中间件(如ESB,Enterprise Service Bus,企业服务总线,一种分布式的中间件)中以及一般基于XML消息的应用 中。本发明实施例提供的消息路由装置,输入XML消息,可以基于XML消息内容输出 满足路由策略的消息接收主体的路由地址。由上述本发明的实施例提供的技术方案可以看出,利用包含有路由策略的XML 转换语言XSL,对XML消息的内容进行XML转换,得到XML转换后的目标消息,路 由策略包含对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目 标消息。由于XML转换语言可以设置对XML消息的内容进行的各种运算,这样可以灵 活的配置路由策略,实现基于XML消息内容进行路由。而且,通过对XML消息的内容 进行XML转换,得到XML转换后的目标消息,即可以实现基于XML消息内容进行路 由。避免了现有技术中,每接收到请求消息,消息中间件要和服务注册中心交互一次, 导致影响系统效率,且易受到网络的影响的缺陷。实施例三如图5所示,以XML转换语言为XSL,且XML转换后的目标消息(RouteValue) 为消息接收主体(Service Provider)的路由地址为例,详细说明本发明实施例的消息路由方法。501、根据对XML消息的内容进行XML转换的运算规则,以及XML转换后对 应的目标消息,将路由策略设置在XSL中。A、设置基于XML消息的内容的路由策略。如XML消息有如下格式< xml version='1.0' encoding='UTF-8, > <sampleMsg> <msgField1>111 </msgField1> <msgField2>222</msgField2> <msgFieldA>aaa</msgFieldA> </sampleMsg>其中,msgField为XML消息的元素,111或222或aaa表示元素值。可以基于XML消息的msgFieldl和msgField2的元素值的取值范围建立XML转
换的运算规则,以及XML转换后的目标消息为消息接收主体的路由地址,可以设置如下
路由策略,表1:
权利要求
1.一种消息路由方法,其特征在于,包括利用包含有路由策略的可扩展标记语言XML转换语言,对XML消息的内容进行 XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内容进行 XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言为可扩展 样式语言XSL ;根据所述目标消息,将所述XML消息路由到消息接收主体。
2.根据权利要求1所述的消息路由方法,其特征在于,获得包含有路由策略的XML 转换语言,包括根据对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目标消 息,将路由策略设置在XML转换语言中。
3.根据权利要求2所述的消息路由方法,其特征在于,根据所述目标消息,将所述 XML消息路由到消息接收主体,包括所述目标消息为消息接收主体的路由地址时,根据所述路由地址,将所述XML消息 路由到所述消息接收主体。
4.根据权利要求2所述的消息路由方法,其特征在于,根据所述目标消息,将所述 XML消息路由到消息接收主体,包括所述目标消息对应有消息接收主体的路由地址时,根据所述目标消息得到对应的路 由地址,根据所述路由地址,将所述XML消息路由到所述消息接收主体。
5.根据权利要求3或4所述的消息路由方法,其特征在于,所述XSL利用导航语言 XPath,对XML消息的内容进行运算。
6.根据权利要求3或4所述的消息路由方法,其特征在于,所述路由地址为统一资源 定位符URL地址。
7.—种消息路由装置,其特征在于,包括转换单元,利用包含有路由策略的可扩展标记语言XML转换语言,对XML消息的 内容进行XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内 容进行XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言包 括可扩展样式语言XSL ;路由单元,用于根据所述目标消息,将所述XML消息路由到消息接收主体。
8.根据权利要求7所述的消息路由装置,其特征在于,所述装置,还包括 路由策略设置单元,用于根据对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目标消息,将路由策略设置在XML转换语言中。
9.根据权利要求8所述的消息路由装置,其特征在于,所述路由单元,包括 发送单元,用于所述目标消息为消息接收主体的路由地址时,根据所述路由地址,将所述XML消息路由到所述消息接收主体。
10.根据权利要求8所述的消息路由装置,其特征在于,所述路由单元,包括 路由表单元,用于为所述目标消息配置并存储消息接收主体的路由地址;发送单元,用于从所述路由表单元确定出所述目标消息对应的消息接收主体的路由 地址,根据所述路由地址,将所述XML消息路由到所述消息接收主体;
11.根据权利要求9或10所述的消息路由装置,其特征在于,所述转换单元的XSL利用导航语言XPath,对XML消息的内容进行运算。
12.根据权利要求9或10所述的消息路由装置,其特征在于,所述路由地址为统一资 源定位符URL地址。
全文摘要
本发明实施例提供一种消息路由方法及消息路由装置。其中,一种消息路由方法,包括利用包含有路由策略的可扩展标记语言XML转换语言,对XML消息的内容进行XML转换,得到XML转换后的目标消息,所述路由策略包含对XML消息的内容进行XML转换的运算规则,以及XML转换后对应的目标消息,所述XML转换语言包括可扩展样式语言XSL;根据所述目标消息,将所述XML消息路由到消息接收主体。本发明实施例的消息路由方法及消息路由装置,由于XML转换语言可以设置对XML消息的内容进行的各种运算,这样可以灵活的配置路由策略,实现基于XML消息内容进行路由。
文档编号G06F17/22GK102014077SQ20091016953
公开日2011年4月13日 申请日期2009年9月8日 优先权日2009年9月8日
发明者陆多俊 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1