一种实现组合服务的系统及方法

文档序号:7927483阅读:108来源:国知局
专利名称:一种实现组合服务的系统及方法
技术领域
本发明涉及计算机技术,特别是指一种实现组合服务的系统及方法。
背景技术
随着计算机技术的发展,为了满足用户在不同发展阶段中不同的业务需求, 企业级应用系统也在不断地发展和完善。在此过程中,产生了大量釆用不同软 件产品、不同设计思想构建的系统,从而形成了系统的分布、异构,进而引发 了各系统之间的互联互通问题。因此,提高计算机软件应用的复用能力,加强 计算机软件技术之间的协作能力成为关键。
目前,为了解决这一 问题,采用面向服务架构(Service-Oriented Architecture, SOA)成为信息技术(IT)领域内的企业和组织的共识。其中,围绕SOA的两 种比较著名的组件技术为服务组件架构(Service Component Architecture, SCA ) 和Windows通讯基础(Windows Communication Foundation, WCF )。具体来说, SCA是2005年提出的 一套可构建基于SOA的应用系统模型,其核心是服务的 定义及其相关实现。WCF是2006年提出的使用托管代码建立和运行面向服务 应用程序的统一框架,整合了.Net平台下所有与分布式应用有关的技术,是分 布式应用开发的集大成者。这两种组件技术均可以将不同系统的不同功能通过 组件之间定义良好的接口和契约联系起来,并且接口是釆用中立的方式进行定 义的,能够独立于实现服务的硬件平台、操作系统和编程语言。这样,构建在 各种这样系统中的服务就能够以统 一 和通用的方式进行交互。
在实际应用中,经济的快速发展、市场的实时多变和客户灵活的需求直接 决定了不同规模的业务应用要求不同程度的交互方式。但是目前,在组件技术 的服务交互机制上,特别是在服务组合方面,如何让具有相同业务逻辑接口的
多个服务同时提供业务逻辑处理,以合理分配和充分利用有限的计算机资源; 如何在运行过程中调整现有的系统功能,实现系统功能的动态扩展,而无需停
机对系统进行维护;如何让SOA与事件驱动的体系结构(Event Driven Architecture, EDA)兼顾执行等问题,均未得到很好的解决。

发明内容
有鉴于此,本发明的主要目的在于提供一种实现组合服务的系统及方法, 方便快捷地提供组合服务。
为达到上述目的,本发明的技术方案是这样实现的
一种实现组合服务的系统,该系统包括Web服务单元和注册管理单元, 其中,所述Web服务单元用于接收服务请求;所述注册管理单元用于根据所述 服务请求在存储的服务注册信息中进行搜索,根据搜索到的服务注册信息列表 控制Web服务单元对服务请求进行处理。
该系统进一步包括服务封装单元,所述服务封装单元用于根据Web服务 描述语言WSDL对服务进行封装,并将所封装服务的服务注册信息注册于注册 管理单元;所述注册管理单元,进一步用于对所述服务注册信息进行存储;所 述服务注册信息,是在服务封装单元根据WSDL对服务进行封装后,由注册管 理单元进行添加、修改或删除产生的。
所述注册管理单元包括信息存储模块和服务公布接口,或信息存储模块 和注册管理模块,其中,所述信息存储模块用于存储所述服务注册信息;所述 服务公布接口用于根据所述服务请求在存储的所述服务注册信息中进行搜索, 根据搜索到的服务注册信息列表控制Web服务单元对服务请求进行处理;所述 注册管理模块用于对所述服务注册信息进行添加、修改或删除。
所述服务注册信息包括但不限于WSDL信息、执行顺序、过滤条件、执 行方式和需要响应服务请求的指定服务。
所述WSDL信息包括但不限于Web服务的命名空间、服务名称、方法名
一种实现组合服务的方法,该方法包含
A、 根据收到的服务请求在存储的服务注册信息中进行搜索,得到服务注
册信息列表;
B、 根据搜索到的服务注册信息列表对服务请求进行处理。
所述步骤A之前进一步包括服务封装单元根据WSDL对服务进行封装, 然后通过注册管理单元对所封装服务的服务注册信息进行注册并存储。
所述服务请求为服务简单对象访问协议SOAP请求,所述步骤A包括根 据服务SOAP请求的Header头节点下的Action动作节点的内容确定描述该服 务SOAP请求的对应服务接口 ,并搜索该服务接口对应实现的 一个或多个服务 的服务注册信息,得到服务注册信息列表。
所述步骤B包括
Bl、根据执行顺序判断搜索到的服务注册信息列表中是否含有待处理的服 务注册信息,如果含有,则继续执行步骤B2,如果未含有,则继续执行步骤 B5;
B2、判断该服务注册信息是否已被设置了过滤条件,如果设置了,则继续 执行步骤B3,如果未设置,则继续执行步骤B4;
B3、判断过滤条件是否满足服务请求,如果满足,则继续执行步骤B4,如 果不满足,则返回执行步骤B1;
B4、对注册服务信息进行解析后,按照已设定的执行方式和WSDL信息中 的服务地址对服务请求进行转发,然后判断是否需要立即响应服务请求,如果 需要,则继续执行步骤B5,如果不需要,则返回执行步骤B1;
B5、对服务请求进行响应。
所述服务请求为服务SOAP请求,步骤B3中所述判断过滤条件是否满足 服务请求,包括从服务SOAP请求的Body正文部分提取出具体业务信息,
与预先设定的过滤条件进行逻辑计算,当且仅当逻辑计算结果为真时表明过滤 条件满足服务SOAP请求;否则不满足。
本发明中,具有相同服务接口的服务中的 一个或多个服务在运行过程中根
据服务请求和服务注册信息被动态的委派,以提供相应的业务逻辑处理。 具体来说,本发明具有以下的优点和特点
1) 一个系统包括多个系统功能, 一个系统功能设计为一个服务接口,通过 一个服务接口可封装 一个服务或多个服务,即 一个业务逻辑由 一个服务或多个 服务实现。这样,允许具有相同系统功能的多个服务同时提供业务逻辑处理, 就能够合理分配和充分利用有限的计算机资源。
2) 根据业务逻辑的需求、即业务需求,通过服务注册信息的注册、管理、 配置,兼顾SOA的线性同步执行方式和EDA的并行异步执行方式。系统中的 注册管理单元提供了同步和异步两种执行方式,根据服务注册信息以指定的一 种执行方式转发每一个服务请求,以满足业务对于顺序执行或并发执行的不同 需求。
3) 通过注册来扩展功能,注册一个服务即扩展一项功能。这样,就可以在 系统运行过程中调整现有的系统功能,即实现了系统功能的动态扩展。系统维 护时,只需要注册新的服务,而无需停机,以此避免了因停机而造成的不必要 损失。
本发明提供的方案中,通过Web服务描述语言(Web Service Description Language, WSDL )与简单对象访问协议(Simple Object Access Protocol, SOAP ) 结合起作用,WSDL被用作动态委派的准则,在注册过程中提供;SOAP被用 作承载业务逻辑请求和响应的容器,由Web服务单元在运行过程中获取和回复。


图1为本发明中实现组合服务的系统结构示意图2为本发明中注册管理单元的结构示意图3为本发明中实现组合服务的流程图4为本发明中服务请求处理流程图5A为本发明实例中M整合前结构示意图5B为本发明实例中M整合后销售服务结构示意图5C为本发明实例中M整合后库管服务结构示意图。
具体实施例方式
本发明中,将至少一个服务的服务注册信息注册于注册管理单元中,封装
为至少一个服务的实现;然后将封装好的服务配置在指定的服务器端;处理由
适配器发送的服务请求时,Web服务单元根据注册管理单元中存储的服务注册
信息对服务请求进行处理。
图1为本发明中实现组合服务的系统结构示意图,如图1所示,该系统包
括 一个Web服务单元、 一个服务封装单元和一个注册管理单元,并进一步包 括至少一个适配器和至少一个业务处理单元。该系统的处理主要包括两个过程 初始的注册过程和后续的请求处理过程,其中,初始的注册过程由服务封装单 元和注册管理单元参与处理;后续的请求处理过程由适配器、Web服务单元、 注册管理单元和业务处理单元参与处理。
其中,注册过程中,服务封装单元根据WSDL对服务进行封装,具体可为 根据应用情况针对每个服务接口将其封装为一个或多个服务,然后将所封装服 务的服务注册信息注册于注册管理单元;注册管理单元用于对来自于服务封装 单元的服务注册信息进行存储。各服务接口可采用相同的平台技术封装,也可 釆用不同的平台技术封装,具体根据应用情况而定。服务注册信息包括但不限 于WSDL信息、执行顺序、过滤条件、执行方式和需要响应服务请求的指定服 务等信息。WSDL信息、执行顺序、过滤条件、执行方式和需要响应服务请求 的指定服务等信息都是根据业务需求进行设定的。其中,WSDL信息包括但不 限于Web服务的命名空间、服务名称、方法名称、方法参数和服务地址等信息; 执行方式为同步执行方式或异步执行方式。
请求处理过程中,适配器用于向Web服务单元发送服务请求,适配器能够 对用户的各种格式的服务请求进行转换,转换为Web服务单元能够识别的格式; Web服务单元用于接收由适配器发送的服务请求,将该服务请求发送至注册管 理单元,并根据注册管理单元的控制对服务请求进行处理,将服务请求发送至
业务处理单元;注册管理单元用于根据来自于Web服务单元的服务请求在存储 的服务注册信息中进行搜索,根据搜索到的服务注册信息列表控制Web服务单
元对服务请求进行处理;业务处理单元于根据业务逻辑对服务请求进行处理。
服务请求可以为服务SOAP请求。
注册管理单元又包括注册管理模块、信息存储模块和服务公布接口,如 图2所示,其中,注册管理模块和信息存储模块在初始的注册过程中发挥作用, 服务公布接口和信息存储模块在后续的请求处理过程中发挥作用。
注册过程中,注册管理模块用于添加、修改或删除服务注册信息,并将该 服务注册信息存储于信息存储模块;信息存储模块用于存储来自于注册管理模 块的服务注册信息。
请求处理过程中,服务公布接口用于根据来自于Web服务单元的服务请求 在信息存储模块中存储的服务注册信息中进行搜索,根据搜索到的服务注册信 息列表控制Web服务单元对服务请求进行处理;信息存储模块用于存储来自于 注册管理模块的服务注册信息。
另外,在系统的运行过程中,注册管理单元还可以对服务注册信息随时进 行动态管理,如动态修改、动态增加和动态删除等,以实现系统功能的动态扩 展。这样,服务注册信息可看作是在服务封装单元根据WSDL对服务进行封装 后,由注册管理单元进行添加、修改或删除产生的。
图3为本发明中实现组合服务的流程图,如图3所示,实现组合服务的处 理过程包括以下步骤
步骤301~步骤302:服务封装单元根据WSDL对服务进行封装,具体可为 根据应用情况针对每个服务接口将其封装为 一个或多个服务,然后对所封装服 务的服务注册信息进行注册并存储。服务注册信息包括但不限于WSDL信息、 执行顺序、过滤条件、执行方式和需要响应服务请求的指定服务等信息。WSDL 信息、执行顺序、过滤条件、执行方式和需要响应服务请求的指定服务等信息 都是根据业务需求进行设定的。其中,WSDL信息包括但不限于通过Web服务 的命名空间、服务名称、方法名称、方法参数和服务地址等信息;执行方式为
同步执行方式或异步执行方式。
步骤301~步骤302为初始的注册过程的具体处理。
步骤303:根据注册的服务注册信息对接收到的服务请求进行处理,即执
行服务请求处理流程。
图4为本发明中服务请求处理流程图,如图4所示,根据搜索到的服务注
册信息列表对服务请求进行处理的具体实现过程包括以下步骤
步骤401 步骤402:接收服务请求,根据服务请求在存储的服务注册信息 中进行搜索,得到服务信息列表。根据服务请求在存储的服务注册信息中进行 搜索的具体处理为结合该服务请求的具体内容,从服务请求的Header头节点 下的Action动作节点部分提取出Web服务方法的命名空间,根据该信息进行搜 索。搜索到的服务注册信息列表中可以至少包含一条服务注册信息,也可以不 包含任何服务注册信息。接收的服务请求可以由Web服务单元通过即时监听的 方式来获取。服务请求可以为SOAP请求。
步骤403:根据执行顺序判断搜索到的服务注册信息列表中是否含有待处 理的服务注册信息,如果含有,则继续执行步骤404;如果未含有,则继续执 行步骤408。
步骤404:判断该服务注册信息是否已被设置了过滤条件,如果设置了, 则继续执行步骤405;如果未设置,则继续执行步骤406。
步骤405:判断过滤条件是否满足服务请求,即将具体业务信息与预先设 定的一个或多个服务的过滤条件进行逻辑计算,得到的逻辑计算结果是否为真, 如果满足,即逻辑计算结果为真,则继续执行步骤406;如果不满足,即逻辑 计算结果为假,则返回执行步骤403。
步骤406:对注册服务信息进行解析,然后按照已设定的执行方式和WSDL 信息中的服务地址将服务请求转发至响应服务器端,然后继续执行步骤407。
将服务请求转发至Web服务端的处理具体包括注册管理单元通过Web 服务单元将服务请求转发至相应业务处理单元。
步骤407:判断是否需要立即响应服务请求,如果需要,则继续执行步骤408;如果不需要,则返回执行步骤403。
步骤408:对服务请求进行响应,具体可以通过Web服务单元的监听响应 当前服务请求,至此,完成整个业务逻辑的处理。
另外,在系统的运行过程中还可以对服务注册信息随时进行动态管理,如 动态修改、动态增加和动态删除等,以实现系统功能的动态扩展。
以上处理由图l所示系统中的注册管理单元来完成,其接收到的服务请求 来自于Web服务单元。
下面通过构建书店管理系统的具体实例来对本发明的具体实现进行更为详 细的说明。
本实例中,主要是对书店的销售管理和库存管理进行了整合。某家书店M, 是当地一家面向零售、高中学校和电子商务的主要供应商,主营文史类教科书 与参考书。随着企业的不断发展壮大,最近M又收购了一家主营理工类教科书 与参考书的书店N,进一步扩大了 M在巿场的份额。
但是,几项主要业务在IT管理上的交叉与重复,阻碍了M实现利润的最 大化,如图5A所示,主要体现在
一、 独立的应用系统之间缺乏沟通,销售人员不得不辗转于各区域经理之 间,使得办公效率大大降低,上游供应和交叉销售面临着重大挑战;
二、 原有的数据中心形成了数据孤岛,数据冗余的现象大大增加,使得数 据汇总的速度更加缓慢,营销策略投放到巿场的周期延长。
通过专业技术团队的帮助,M 了解到了阻碍他们实现其目标的关键问题所 在,并希望可以通过实施SOA提供的灵活性来完成系统之间的整合以降低运营 成本和提高整体价值。此时,可以采用本发明提供的实现组合服务的方案,其 中主要包括系统设计与部署和系统运行两个阶段。
系统设计与部署阶段主要包括系统初步设计、详细设计和实施过程等三个 步骤。经过详细的调研,专业技术团队提出如下解决方案
维持现有IT基础架构,避免分布、异构系统大规模的迁移和重建,只将必 要的功能封装为Web服务以实现重用;
以Web服务的形式为各销售渠道,如店面、批发和网上购物,提供统一的 销售接口,并使用该接口封装已有功能;
以Web服务的形式为分散在不同位置的库存管理提供统一的查询接口,并 使用该接口封装已有功能。
系统初步设计,将用户提出的业务需求转化为一系列WSDL描述的服务接 口,为技术平台无关的处理业务需求的业务逻辑提供可能。对于销售渠道部分 的整合,需要制定出销售接口,包括销售订单、销售订单明细等内容;对于库 存管理部分的整合,需要制定出销售接口,包括销售订单、销售订单明细等内 容。
详细设计,结合实际情况根据系统功能定义出服务接口,然后将服务接口 封装为一个或多个服务的实现,其中,封装时可以选用不同的平台技术,以便 于使各项资源能够被合理的分配。对于销售渠道部分的整合,如图5B所示, 使用该服务接口分别封装表示原M、 N门店销售管理的销售服务1。根据业务 需求,当销售金额或销售数量超过一定数量,如金额5万元以上或门店库存500 本以上时,订单需要经过区域经理的审批才能生效,因此,我们还需要封装用 于总部审批流程的销售服务2。为在第一时间将重要的待审批订单通知到区域 经理,还封装了移动通信的销售服务3,以便在审批订单产生后,同时以短信 的形式通知到相应的区域经理。对于库存管理部分的整合,如图5C所示,使 用该服务接口分别封装表示原M、 N库存管理的库管服务1、新的库管服务2 和库管服务3。
实施过程,将封装好的一个或多个服务的实现部署到指定服务器端,然后 在组件模型中通过注册管理单元维护这些服务注册信息。服务注册信息包括但 不限于WSDL信息、执行顺序、过滤条件、执行方式、需要响应服务请求的指 定服务等信息。WSDL信息、执行顺序、过滤条件、执行方式和需要响应服务 请求的指定服务等信息都是根据业务需求进行设定的。其中,WSDL信息包括 但不限于Web服务的命名空间、服务名称、方法名称、方法参数和服务地址等 信息;执行方式为同步执行方式或异步执行方式。指定业务处理单元可由WSDL 信息中包含的服务地址来确定。
对于销售渠道部分的整合,如图5B所示,需要将部署好的销售服务1和
销售服务2在注册管理单元中注册,并将销售服务l的过滤条件设置为"金额 小于等于5万元或库存小于等于5百本"、销售服务2的过滤条件设置为"金额 大于5万元或库存大于5百本"。
对于库存管理部分的整合,如图5C所示,需要将部署好的库管服务l、库 管服务2和库管服务3在注册管理单元中注册,并将库管服务1的过滤条件设 置为"图书分类等于文史类"、库管服务2的过滤条件设置为"图书分类等于理 工类"、库管服务3的过滤条件设置为"图书分类等于其他类"。
另外,在系统的运行过程中还可以对服务注册信息随时进行动态管理,如 动态修改、动态增加和动态删除等。
对于具有不同销售管理或库存管理业务需求的部门,只需要利用相应的服 务接口封装实现,然后再注册到注册管理单元中即可与现有系统进行集成,而 不需要再次变动。所有应用系统的适配器也均可以以一致的方式使用原有的系 统功能。
系统运行阶段主要包括请求过程、转发过程和响应过程等三个阶段。注册 管理单元将根据服务SOAP请求与过滤条件的匹配结果,自动导向到所需要的
销售服务完成订单处理或所需要的库管服务完成图书检索。
请求过程,通过监听的方式由Web服务单元接收到服务SOAP请求,然后 将该服务SOAP请求交由注册管理单元进行处理。例如,Web服务单元监听到 一个服务SOAP请求,该服务SOAP请求中包含"金额4万元及库存200本" 的信息。服务SOAP请求是根据预定义信息、由用于发送业务请求的适配器生 成,即根据一定的业务规则,对要转发到的服务地址等信息通过WSDL进行标 记,形成信息标记项,并将商品的名称、金额、库存等作为变化的业务对象, 形成业务标记项。
转发过程,根据服务SOAP请求的Header头节点下的Action动作节点的 内容在注册管理单元中确定描述该服务SOAP请求的对应服务接口,并搜索该
服务接口对应的实现一个或多个服务的服务注册信息,即通过注册管理单元搜 索处理要发送的该服务SOAP请求所实现的一个或多个服务的服务注册信息列 表。对于销售订单请求,通过检索返回的服务注册信息列表中包括销售服务l、
销售服务2和销售服务3的服务注册信息。对于库存检索请求,通过检索返回 的服务注册信息列表中包括库管服务1、库管服务2和库管服务3的服务注册 信息。例如,根据销售订单请求"金额4万元及库存200本"搜索到销售服务 1 、销售服务2和销售服务3的服务注册信息。
从服务注册信息列表中根据执行顺序读取其中的服务注册信息,如果服务 注册信息列表为空,表示无法提供针对该系统功能的服务,则进行异常处理, 直接对服务SOAP请求进行响应。注册管理单元结合服务SOAP请求的具体内 容,从服务SOAP请求的Body正文部分提取出具体业务信息,与预先设定的 一个或多个服务的过滤条件进行逻辑计算,当且仅当逻辑计算结果为真的一个 或多个服务的实现才允许被作为该服务SOAP请求的处理,否则都将根据图3 所示的流程进行异常处理。
对于销售订单请求,如图5B所示,当服务SOAP请求中包含的对应搜索 条件为"金额小于等于5万元或库存小于等于5百本"时,该服务SOAP请求 将仅由销售服务l处理;当服务SOAP请求中包含的对应搜索条件为"金额大 于5万元或库存大于5百本"时,该服务SOAP请求将由销售服务2和销售服 务3共同处理。
对于库存检索请求,如图5C所示,当服务SOAP请求中包含的搜索条件 为"图书分类等于文史类"时,该服务SOAP请求将仅由库管服务l处理;当 SOAP请求中包含的搜索条件为"图书分类等于理工类"时,该服务SOAP请 求将仅由库管服务2处理;当SOAP请求中包含的搜索条件为"图书分类等于 其他类"时,该服务SOAP请求将仅由库管服务3处理。
注册管理单元提供了同步和异步两种执行方式。根据服务注册信息以指定 的一种执行方式转发每一个服务SOAP请求,以满足顺序或并发执行的不同需 求。同步执行方式是指服务SOAP请求转发到业务的一个服务的实现后,需要
等待相应的服务响应结果才能继续下一次转发过程。同步执行方式适用于需要 等待服务响应结果或两次转发的服务之间有严格逻辑顺序的情况。异步执行方 式是指服务SOAP请求转发到业务的一个服务的实现后,不需要等待服务响应 结果就可以继续下一次转发过程。异步执行方式适用于不需要等待服务响应结 果或两次转发的服务之间没有严格逻辑顺序的情况。根据不同的业务需求,采 取不同的执行方式或执行方式的组合,可以在整体上缩短与系统的交互时间。 对于销售订单请求,如图5B所示,可以根据实际业务所划分的两种服务
组合釆取不同的执行方式对用于门店的销售服务1采取同步执行方式,以提 供可以实时的处理门店内零售交易的能力;对用于审批的销售服务2和销售服 务3釆取异步执行方式,以提供对实时性要求不高的批量交易的能力。
在转发操作执行完成后,注册管理单元根据服务注册信息中预先设定的执 行方式判断是否需要立即提取服务SOAP响应将其交由Web服务单元进行处 理。对于需要立即返回服务SOAP响应且具有多个服务的实现的系统功能,需 要通过注册管理单元指定一个用于提供该服务SOAP响应的服务的实现,该服 务SOAP响应最终通过Web服务单元返回给适配器。对于销售订单请求,当服 务SOAP请求满足过滤条件"金额大于5万元或库存大于5百本"时,销售服 务2和销售服务3支持异步的处理能力,注册管理单元根据服务注册信息将选 取销售服务2的服务SOAP响应信息作为对服务SOAP请求的回复。
响应过程,根据系统的整体运行情况,由Web服务单元将服务SOAP响应 再次通过监听建立的网络连接回复给适配器。至此,完成整个业务逻辑的处理。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
1、一种实现组合服务的系统,其特征在于,该系统包括Web服务单元和注册管理单元,其中,所述Web服务单元用于接收服务请求;所述注册管理单元用于根据所述服务请求在存储的服务注册信息中进行搜索,根据搜索到的服务注册信息列表控制Web服务单元对服务请求进行处理。
2、 根据权利要求l所述的系统,其特征在于,该系统进一步包括服务封 装单元,所述服务封装单元用于根据Web服务描述语言WSDL对服务进行封装,并将所封装服务的服务注册信息注册于注册管理单元;所述注册管理单元,进一步用于对所述服务注册信息进行存储; 所述服务注册信息,是在服务封装单元根据WSDL对服务进行封装后,由注册管理单元进行添加、修改或删除产生的。
3、 根据权利要求2所述的系统,其特征在于,所述注册管理单元包括信 息存储模块和服务公布接口 ,或信息存储模块和注册管理模块,其中,所述信息存储模块用于存储所述服务注册信息;所述服务公布接口用于根据所述服务请求在存储的所述服务注册信息中进行搜索,根据搜索到的服务注册信息列表控制Web服务单元对服务请求进行处 理;所述注册管理模块用于对所述服务注册信息进行添加、修改或删除。
4、 根据权利要求1至3任一所述的系统,其特征在于,所述服务注册信息 包括但不限于WSDL信息、执行顺序、过滤条件、执行方式和需要响应服务 请求的指定服务。
5、 根据权利要求4所述的系统,其特征在于,所述WSDL信息包括但不 限于Web服务的命名空间、服务名称、方法名称、方法参数和服务地址。
6、 一种实现组合服务的方法,其特征在于,该方法包含以下步骤A、根据收到的服务请求在存储的服务注册信息中进行搜索,得到服务注 册信息列表;B 、根据搜索到的服务注册信息列表对服务请求进行处理。
7、 根据权利要求6所述的方法,其特征在于,所述步骤A之前进一步包 括服务封装单元根据WSDL对服务进行封装,然后通过注册管理单元对所封装服务的服务注册信息进行注册并存储。
8、 根据权利要求6所述的方法,其特征在于, 所述服务请求为服务简单对象访问协议SOAP请求,所述步骤A包括根据服务SOAP请求的Header头节点下的Action动作 节点的内容确定描述该服务SOAP请求的对应服务接口 ,并搜索该服务接口对 应实现的一个或多个服务的服务注册信息,得到服务注册信息列表。
9、 根据权利要求6所述的方法,其特征在于,所述步骤B包括Bl、根据执行顺序判断搜索到的服务注册信息列表中是否含有待处理的服 务注册信息,如果含有,则继续执行步骤B2,如果未含有,则继续执行步骤 B5;B2、判断该服务注册信息是否已被设置了过滤条件,如果设置了,则继续 执行步骤B3,如果未设置,则继续执行步骤B4;B3、判断过滤条件是否满足服务请求,如果满足,则继续执行步骤B4,如 果不满足,则返回执行步骤B1;B4、对注册服务信息进行解析后,按照已设定的执行方式和WSDL信息中 的服务地址对服务请求进行转发,然后判断是否需要立即响应服务请求,如果 需要,则继续执行步骤B5,如果不需要,则返回执行步骤B1;B5、对服务请求进行响应。
10、 根据权利要求9所述的方法,其特征在于, 所述服务请求为服务SOAP请求,步骤B3中所述判断过滤条件是否满足服务请求,包括从服务SOAP请 求的Body正文部分提取出具体业务信息,与预先设定的过滤条件进行逻辑计算,当且仅当逻辑计算结果为真时表明过滤条件满足服务SOAP请求;否则不 满足。
全文摘要
本发明公开了一种实现组合服务的系统及方法。本发明提供的方案中,将至少一个服务的服务注册信息注册于注册管理单元中,封装为至少一个服务的实现;然后将封装好的服务配置在指定的服务器端;处理由适配器发送的服务请求时,根据注册管理单元中存储的服务注册信息对服务请求进行处理。根据本发明提供的方案,允许具有相同系统功能的多个服务同时提供业务逻辑处理,就能够合理分配和充分利用有限的计算机资源;能够满足系统对于顺序执行或并发执行的不同需求;系统维护时,只需要注册新的服务,而无需停机,以此避免了因停机而造成的不必要损失。
文档编号H04L29/08GK101388910SQ20081022530
公开日2009年3月18日 申请日期2008年10月29日 优先权日2008年10月29日
发明者晗 刘, 张克鹏 申请人:北京中企开源信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1