基于QoS指标和Web服务输出参数的Web服务组合方法和装置的制作方法

文档序号:7714845阅读:131来源:国知局
专利名称:基于QoS指标和Web服务输出参数的Web服务组合方法和装置的制作方法
技术领域
本发明涉及网络服务领域,尤其涉及一种基于QoS指标和Web服务输出 参数的Web服务组合方法和装置。
背景技术
随着Web服务技术的日益成熟,在网络上出现了越来越多的稳定易用 的Web共享服务。但是,由于单个Web服务所能够提供的功能有限,因此 为了更加充分地利用共享的Web服务,有必要对共享的Web服务进行整 合,以为使用者提供更加强大的服务功能,加快系统开发的速度,以及快速 满足用户需求。对Web服务进行整合,在本领域中通常称为Web服务组 合。
在现有技术中,通常存在有两种Web服务组合方法静态的Web服务 组合方法和固定井见则的Web服务方法。
静态的Web服务组合方法是一种由用户确定Web服务组合的Web服务 组合方法。在静态的Web服务组合方法中,Web服务组合中的各Web服务 是事先由用户确定好的,并不会根据Web服务的具体指标的变化而相应地 改变。也就是说,在该静态的Web服务组合方法中,用户的需求必须是提 前确定的,并且不能动态地改变。
固定规则的Web服务组合方法是一种基于固定规则的Web服务组合方 法。在该固定规则的Web服务组合方法中,所述固定规则通常只考虑Qos 指标,而没有考虑Web服务的输出,其可以通过对各Qos指标进行加权的方 法来描述用户的需求。
然而,在很多情形下,用户的需求通常是动态地改变的,比如在同一套 系统供多个用户使用的情况下,由于各个用户的需求可能不同,因此在不同的用户使用时,用户的需求通常动态地发生变化。而且,在很多情况下,
Web服务的输出才是用户最关心的问题。很显然,在现有的Web服务组合 方法,上述问题都不能得到解决。
因此,需要一种基于QoS指标和Web月l务输出参数的Web服务组合方 法和装置,以根据用户的需求动态地进行Web服务组合,并且满足Web服 务的输出要求。

发明内容
鉴于上述问题,提供一种基于QoS指标和Web服务输出参数的Web服 务组合方法,其基于QoS指标和Web服务输出参数来设定Web服务组合规 则,针对从候选Web服务中选出的一组Web服务组合,获得所选择出的一 组Web服务组合中的各Web服务的QoS指标以及Web服务输出参数,并且 判断所获得的QoS指标或Web服务输出参数是否满足所设定的Web服务组 合规则,以确定所选择出的 一组Web服务组合是否为所需Web服务组合。 由此,可以根据用户的需求动态地进行Web服务组合,并且可以满足Web 服务的输出要求。
根据本发明的一个方面,提供了一种由Web服务组合装置执行的基于 QoS和Web服务输出的Web服务组合方法,所述Web月良务器组合装置包括 存储单元,用于存储Web服务组合规则,所述方法包括
从所述存储单元读取Web服务组合规则,其中所述Web服务组合规则 是基于使用者所需的QoS指标和Web服务输出参数预先设定的;
对所读取的Web服务组合规则进行解析;
从候选Web服务中选择一组Web服务组合;
利用Web服务组合引擎获耳又所选择的一组Web服务组合中的各Web服 务的QoS指标;
基于反射技术来获取所选择的一组Web服务组合中的各Web服务的输 出参数;
判断所获取的各Web服务的QoS指标和/或Web服务输出参数是否满足所解析出的Web服务组合规则,以确定所选择的一组Web月l务组合是否为 所需Web服务组合,
其中,在所获得的各Web服务的QoS指标和Web服务输出参数都满足 所解析出的Web服务组合规则时,所选择的 一组Web服务组合被确定为所 需Web服务组合。
根据本发明的另 一方面,4是供了 一种基于QoS和Web服务输出的Web
服务组合装置,包括
存储单元,用于存储Web服务组合规则,其中所述Web服务组合规则
是基于所需要的QoS指标和Web服务输出参数预先设定的; 读取单元,用于从所述存储器读取所述Web服务组合规则; 解析单元,用于对所读取的Web服务组合规则进4亍解析; 选择单元,用于从候选Web服务中选择一组Web月良务组合; QoS指标获取单元,用于利用Web服务组合引擎获取所选择的一组Web
服务组合中的各Web服务的QoS指标;
输出参数获取单元,用于基于反射技术来获取所选择的一组Web服务
组合中的各Web服务的输出参数;
确定单元,用于判断所获取的各Web服务的QoS指标和/或Web服务输
出参数是否满足所解析出的Web服务组合规则,以确定所选择的一组Web
服务组合是否为所需Web服务组合,
其中,在所获得的各Web服务的QoS指标和Web服务输出参数都满足
所解析出的Web服务组合规则时,所选择的 一组Web服务组合被确定为所
需Web服务组合。
通过参考以下结合附图的说明及权利要求书的内容,并且随着对本发明 的更全面理解,本发明的其他目的及结果将更加明白及易于理解。


以下将结合附图和具体实施例对本发明进行详细描述,其中图1示出了才艮据本发明一个实施例的由Web月良务组合装置执行的基于QoS指标和Web月l务输出参数的Web服务组合方法的流程图;以及
图2示出了据本发明 一个实施例的基于QoS和Web服务输出参数的Web服务组合装置的方框图。
在所有附图中相同的标号指示相似或相应的特;江或功能。
具体实施例方式
下面结合附图对本发明作进一步的说明。
图1示出了根据本发明的一个实施例的由Web服务组合装置执行的基于QoS指标和Web月l务输出参数的Web月l务组合方法的流程图。
如图1所示,在步骤SI 10,指定用于进行Web服务组合的Web服务组合模板。所述Web服务组合模板是对Web服务组合过程中的Web服务的抽象的定义。所述Web服务组合模板包括多个服务模板,每个服务模板可以包括多个候选的Web服务。
在完成对Web服务组合模板的指定后,流程进行到步骤S120。在步骤S120,从所述Web服务组合装置的存储单元中读取Web服务组合规则,其中所述Web服务组合规则是基于所需的Web服务的QoS指标和Web服务的输出参数而预先设定的。
根据本发明的一个方面,所述Web服务组合规则可以是基于针对所指定的Web服务才莫4反的所需Web服务QoS指标和Web服务输出参数而预先设定的。根据另一方面,也可以不需要专门指定Web服务组合模板,而是基于常用Web服务模板的所需Web服务QoS指标和Web服务输出参数来设定所述Web服务组合规则。
所述Web服务组合规则是用户需求的一种表示。在本发明中,所述Web服务组合规则是QoS指标和Web输出参数的逻辑表达式。通常,所述Web服务的QoS指标包括可用性、响应时间、费用和可靠性。所述Web服务输出参数例如包括商品价格等。
为了更好地理解基于Web服务的QoS指标和Web服务输出来设定所述
9Web服务规则,下面以一个具体实例进行描述。
例如,在一个包括3个Web服务的Web Bl务模板中,Qos指标分别被 定义为Qll、 Q12、 Q13、 Q21、 Q22、 Q23、 Q31、 Q32、 Q33。其中,Qll 是第一个Web服务的第一个Qos指标,其代表第一个Web服务的可用性; Q12是第一个Web服务的第二个Qos指标,其代表第一个Web服务的响应 时间;Q13是第一个Web服务的第三个Qos指标,其代表第一个Web服务 的可靠性。类似地,Q21是第二个Web服务的第一个Qos指标,其代表第二 个Web服务的可用性;Q22是第二个Web服务的第二个Qos指标,其代表 第二个Web服务的响应时间;Q23是第二个Web服务的第三个Qos指标, 其代表第二个Web服务的可靠性。Q31是第三个Web服务的第一个Qos指 标,其代表第三个Web服务的可用性;Q32是第三个Web服务的第二个Qos 指标,其代表第三个Web服务的响应时间;Q33是第三个Web服务的第三 个Qos指标,其代表第三个Web服务的可靠性。
Web服务的输出表示为011、 012、 021、 022、 023。其中Oll代表第 一个Web服务的第一个参数,023代表第2个Web服务的第3个输出参数。
可以基于QoS指标和Web服务输出参数来如下设定Web服务组合规

Q12+Q22+Q32<100&&022<5,其表示Web服务组合的总响应时间和小 于100并且第2个Web服务的第2个参数(可能是商品报价)小于5。
要注意的是,所述Web服务组合规则是预先设定的,并且被存储在所 述Web服务组合装置的存储单元中,以供将来使用。此外,所述Web服务 组合规则还可以根据需要,通过修改QoS指标和/或Web服务参数及其逻辑 关系而动态地更新。
在从所述存储单元读取所述Web服务组合规则后,流程进行到步骤 S130。在步骤S130,对所读取的Web服务组合规则进行解析。通常,所读 取的Web服务组合规则是一个字符串。可以采用文法分析、语法分析的方 法来对所读取的Web服务组合规则(例如,字符串)进行解析,以解析出 QoS指标名称、Web服务输出名称、逻辑关系等。例如,可以通过在程序中嵌入Lua来完成对Web服务组合规则的解析。要明白的是,还可以采用其它合适的方法来对所读取的Web服务组合规则进行解析。
在解析出Web服务组合规则后,流程进行到步骤S140。在步骤S140中,从候选Web服务中选择出 一组Web服务组合,例如可以通过列举法来选择出一组Web服务组合。要明白的是,还可以采用其它合适的方法来选择Web H务组合。
在选择好一组Web服务组合后,流程进行到步骤S150。在步骤S150,利用现有的Web服务组合引擎来完成Web服务组合过程,以获得Web服务的QoS指标。例如,可以采用目前常用的Web服务组合引擎BPEL来进行Web服务组合过程,通过BPEL引擎的运行结果来计算和统计获得QoS指标。例如,在所考虑的QoS指标包括可用性、响应时间、费用和可靠性的情况下,可用性和响应时间可以在调用结束后获得,费用可以在服务发现时获得,而可靠性可以根据本地的历史记录及本次运行结果获得。
这里,要说明的是,在进行Web服务组合之前,通常需要对Web服务组合中的Web服务进行服务发现,并将服务发现的结果存储在所述Web服务组合装置的存储单元中。
另外,要明白的是,在进行Web服务组合来获取QoS指标时,用户可以根据其工作环境来选择是否进行QoS获取和服务发现。如杲所选择的一組Web服务组合中的Web服务稳定或QoS要求不高,即,如果所述候选Web服务及其QoS指标变化不频繁,则不需要每次都进行服务发现,而只需要首次进行服务发现,并将首次服务发现的结果存储在所述Web服务组合装置的存储单元中,随后每次从所述Web服务组合装置的存储单元中读取所存储的首次服务发现的结果。但是,在所选择的一组Web服务组合中的Web服务不稳定或者QoS要求非常高的情况下,即,如果所迷候选Web服务频繁变化或QoS指标频繁变化,则需要每次都进行服务发现。按照上述方式,可以在保证QoS指标获取的准确性的情况下,缩短获取QoS指标所需要的时间。
在获得Web服务的QoS指标后,流程进行到步骤S160。在步骤S160,将所获得的Web服务的QoS指标与所解析出的Web服务组合规则中所包含
ii的QoS指标的要求进行比较。如果所获得QoS指标不满足所述Web服务组 合规则的要求,则返回到步骤S140,从所述候选Web服务中选择另一组 Web力良务组合。
如果所获得的QoS指标满足所述Web服务组合规则的要求,则流程进 行到步骤S170。在步骤S170,采用反射技术来获得所选择的一组Web服务 组合中的各Web服务组合的输出参数值。所述反射技术是一种能够通过与 系统运行状态和行为具有因杲关联的系统自述来监测并调整系统状态和行为 的技术。利用所述反射技术,可以根据Web服务组合引擎的运行结果,得 到服务组合规则中描述的Web服务输出和程序运行结果的对应关系,从而 在程序运行过程中,根据程序运行结果来得到Web服务的输出参数值。
在获得所述Web服务的输出参数后,流程进行到步骤S180。在步骤 S180,判断所获得的Web服务的输出参数是否满足所解析出的Web服务组 合规则的要求。如果所获得的Web服务的输出参数不满足所解析出的Web 服务组合规则的要求,则返回到步骤S140,从所述候选Web服务中选择另 一组Web服务组合。
如果所获得的Web服务的输出参数满足所解析出的Web服务组合规则 的要求,则确定所选择的一组Web服务组合为所需Web服务组合。
以上参照图1描述了根据本发明的一个优选实施例的基于QoS指标和 Web服务输出参数的Web服务组合方法。但是,要明白的是,可以对上述 实施例进行各种变型。
才艮据一个方面,可以从上述实施例中删除步骤SllO,即,在从所述存 储单元读取所述设定的Web月l务组合规则之前,可以不需要指定Web月l务 组合模板。
此外,在上述参照图l描述的基于本发明的一个优选实施例的Web服务 组合方法中,首先,执行所述QoS指标获取步骤,然后执行所述QoS指标 是否符合Web服务组合规则的判断过程,在所述QoS指标符合要求的情况 下,再执行Web服务输出参数获取步骤,然后执行所述Web服务的输出参 数是否符合Web服务组合规则的判断过程。作为替换实例,也可以在所述QoS指标获取步骤和Web服务输出参数获取步骤之后,再执行所述判断过程。或者,可以先执行Web服务输出参数获取步骤,然后执行所述Web服务输出参数是否符合Web服务组合规则的判断过程,在所述Web服务输出参数符合Web服务组合规则的情况下,再执行所述QoS指标获取步骤,然后执行所述Web服务的QoS指标是否符合Web服务组合规则的判断过程。
本发明的上述用于基于QoS指标和Web服务输出参数的Web服务组合方法,可以采用库欠件实现,也可以采用硬件实现,或采用软硬件结合的方式实现。
图2示出了根据本发明的一个优选实施例的Web服务组合装置200的方框图。如图2所示,所述Web服务组合装置200包括指定单元201、读取单元203、解析单元205、选择单元207、 QoS指标获取单元209、输出参数获取单元211、确定单元213和存储单元215。
所述存储单元215用于存储Web服务组合规则,其中所述Web服务组合规则是基于所需的Web服务的QoS指标和Web服务的输出参数而预先设定的。
所述指定单元201用于指定用于Web服务组合的Web服务组合模板。所述Web服务组合模板包括多个服务模板,每个服务模板可以包括多个候选的Web服务。
在完成对所述Web服务组合模板的指定后,所述读取单元203从所述存储单元215读取Web服务组合规则,所述Web服务組合规则是针对所指定的Web服务模板的所需QoS指标和Web服务输出参数而预先设定的。
在读取出所述Web服务组合规则后,所述解析单元207对所述Web服务组合规则进行解析,以解析出例如QoS指标名称、Web服务输出名称、逻辑关系等。
在对所述Web服务组合规则进行解析后,所述选择单元207从所述候选Web服务中选择一组Web服务组合。针对所选择的一组Web服务组合,QoS指标获取单元209和输出参数获取单元分别获得Web服务的QoS指标和Web服务输出参数。在获得Web服务的QoS指标和Web服务输出参数后,确定单元213判断所获得的Web服务的QoS指标和Web服务输出参数是否都满足Web服务组合规则,以确定所选择的Web服务组合是否为所需Web服务组合。在所获得的Web服务的QoS指标和Web服务输出参数都满足Web服务组合规则时,确定所选择的Web服务组合为所需Web服务组合。如果所获得的Web服务的QoS指标和Web服务输出参数中之一不满足Web服务组合规则,则认为所选择的Web服务组合不是所需Web服务组合,并且所述选择单元207从所述候选Web服务中选择另 一组Web服务组合。然后,通过QoS指标获取单元209、输出参数获耳又单元211和确定单元213来重新确定所选择的另一组Web服务组合是否为所需Web服务组合。如此重复,直到找到所需Web服务组合为止。
这里,要说明的是,所述确定单元213可以在QoS指标获取单元209获得QoS指标和输出参数获取单元211获得Web服务输出参数之后,分别执行所述QoS指标是否满足所述Web服务组合规则的判断过程和所述Web服务输出参数是否满足所述Web服务组合规则的判断过程。作为替换实例,所述确定单元213也可以在所述QoS指标获取单元209获得QoS指标且输出参数获取单元211获得Web服务输出参数之后,再执行所述QoS指标和所述Web输出参数两者是否都满足所述Web服务组合规则的判断过程。此外,要明白的是,QoS指标获取单元209获得QoS指标和输出参数获取单元211获得Web服务的输出参数的顺序可以互换,而不会影响本发明的保护范围。
此外,所述Web服务组合装置200还可以包括服务发现单元(未示出),用于在所选择的一组Web服务组合中的Web服务频繁变化或者QoS指标频繁变化的情况下,则对所选择的一组Web服务组合中的Web服务进行服务发现。要明白的是,在所选择的一组Web服务组合中的Web服务及其QoS指标变化不频繁的情况下,可以不需要服务发现单元。
此外,所述Web月良务组合装置200还可以包括Web服务组合规则更新单元,用于根据需要,通过修改QoS指标和/或Web服务参数及其逻辑关系而动态地更新所述Web服务组合身见则。
14有益效果
通过以上结合附图对本发明实施例的详细描述,不难看出利用本发明提供的Web服务组合方法和装置,可以基于QoS指标和Web服务输出参数来i殳定Web服务组合^见则,针对/人候选Web月良务中选出的 一组Web服务组合,获得所选择出的一组Web服务组合中的各Web服务的QoS指标以及Web服务输出参数,并且判断所获得的QoS指标或Web服务输出参数是否满足所设定的Web服务组合规则,以确定所选择出的一组Web服务组合是否为所需Web服务组合。由此,可以根据用户的需求动态地进行Web服务组合,并且可以满足Web服务的输出要求。
但是,本领域技术人员应当理解,对上述本发明所提出的Web服务组合方法和装置,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。
权利要求
1、一种由Web服务组合装置执行的基于QoS和Web服务输出的Web服务组合方法,所述Web服务器组合装置包括存储单元,用于存储Web服务组合规则,所述方法包括从所述存储单元读取Web服务组合规则,其中所述Web服务组合规则是基于使用者所需的QoS指标和Web服务输出参数预先设定的;对所读取的Web服务组合规则进行解析;从候选Web服务中选择一组Web服务组合;利用Web服务组合引擎获取所选择的一组Web服务组合中的各Web服务的QoS指标;基于反射技术来获取所选择的一组Web服务组合中的各Web服务的输出参数;判断所获取的各Web服务的QoS指标和/或Web服务输出参数是否满足所解析出的Web服务组合规则,以确定所选择的一组Web服务组合是否为所需Web服务组合,其中,在所获得的各Web服务的QoS指标和Web服务输出参数都满足所解析出的Web服务组合规则时,所选择的一组Web服务组合被确定为所需Web服务组合。
2、 如权利要求1所述的方法,其中,所述判断步骤可以分别发生在所 述QoS指标获取步骤和所述Web服务输出参数获取步骤之后,或者发生在 所述QoS指标获取步骤和所述Web服务输出参数获取步骤两者之后。
3、 如权利要求1或2所述的方法,其中,如果所获取的各Web服务的 QoS指标和Web服务输出参数中之一不满足所解析出的Web服务规则,则 从所述候选Web服务中选择另 一组Web服务组合,并针对所选择的另 一组 Web服务组合,重新进行上述QoS指标获取步骤、Web服务输出参数获取步 骤以及所述判断所获取的各Web服务的QoS指标或Web服务输出参数是否 满足Web服务组合规则的步骤。
4、 如权利要求1所述的方法,其中,在从所述存储单元读取Web服务 组合规则之前,还包括步骤指定服务组合模板,并且从所述存储器读取Web服务组合MJ'J的步骤包括从所述存储单元 中读取所指定的服务组合模板的Web服务组合规则,其中所述Web服务组 合规则是基于针对所指定的服务组合模板的所需QoS指标和Web服务输出 参数预先设定的。
5、 如权利要求1或2所述的Web服务组合方法,其中,所述Web服务 组合规则可以根据需要,通过修改QoS指标和/或Web服务参数及其逻辑关 系而动态地更新。
6、 如权利要求l所述的Web服务组合方法,其中,在所述候选Web服 务及其QoS指标不是频繁变化的情况下,所述QoS指标获取步骤包括从所 述存储单元中读取所存储的相应QoS指标,而不需要进行服务发现,所述所 存储的QoS指标是对所述候选服务进行首次服务发现而获得的并被存储在所 述存储单元中。
7、 如权利要求l所述的Web服务组合方法,其中,在所述候选Web服 务频繁变化或QoS指标频繁变化的情况下,所述QoS指标获取步骤包括对 所选择的一组服务组合进行服务发现而获得所述QoS指标。
8、 一种基于QoS和Web服务输出的Web服务组合装置,包括 存储单元,用于存储Web服务组合规则,其中所述Web服务组合规则是基于所需要的QoS指标和Web服务输出参数预先设定的; 读取单元,用于从所述存储器读取所述Web服务组合规则; 解析单元,用于对所读取的Web服务组合规则进行解析; 选捧单元,用于/人候选Web服务中选择一组Web服务组合; QoS指标获取单元,用于利用Web服务组合引擎获取所选择的一组Web服务组合中的各Web服务的QoS指标;输出参数获取单元,用于基于反射技术来获取所选择的一组Web服务 组合中的各Web服务的输出参数;确定单元,用于判断所获取的各Web服务的QoS指标和/或Web服务输 出参数是否满足所解析出的Web服务组合规则,以确定所选择的一组Web 服务组合是否为所需Web服务组合,其中,在所获得的各Web服务的QoS指标和Web服务输出参数都满足 所解析出的Web月l务组合规则时,所选择的一组Web服务组合^皮确定为所 需Web服务组合。
9、 如权利要求8所述的装置,其中,在所述确定单元确定所获取的各 Web服务的QoS和Web服务输出参数中之一不满足所解析出的Web服务规 则时,所述选择单元从所述候选Web服务中选择另一组Web服务组合,并 针对所选择的另一组Web服务组合,所述QoS指标获取单元、所述输出参 数获取单元和确定单元重新进行QoS指标获取、Web服务输出参数获取以及 判断针对所选择的另 一組Web服务组合而获取的各Web服务的QoS和Web 服务输出参数是否都满足Web服务组合规则。
10、 如权利要求8所述的装置,还包括指定单元,用于指定服务组合模板,其中所述存储单元中所存储的Web服务组合规则是基于针对所指定的 服务组合模板的所需QoS指标和Web服务输出参数预先设定的。
11、 如权利要求8或9所述的Web服务组合装置,还包括Web服务组 合规则更新单元,用于根据需要,通过修改QoS指标和/或Web服务参数及 其逻辑关系而动态地更新所述Web服务组合规则。
12、 如权利要求8所述的Web服务组合装置,其中,在所述候选Web 服务及其QoS指标不是频繁变化的情况下,所述QoS指标获取单元从所述 存储单元中读取所存储的相应QoS指标,而不需要进行服务发现,所述所存 储的QoS指标是对所述候选服务进行首次服务发现而获得的并被存储在所述 存储单元中。
13、如权利要求8所述的Web服务组合装置,其中,所述QoS指标获 取单元还包括服务发现单元,用于在所述候选Web服务频繁变化或QoS指 标频繁变化的情况下,对所选择的一组服务组合进行服务发现而获得所述 QoS指标。
全文摘要
本发明提供了一种基于QoS指标和Web服务输出的Web服务组合方法,所述方法包括从所述存储单元读取Web服务组合规则,其中所述Web服务组合规则是基于使用者所需QoS指标和Web服务输出参数预先设定的;对所读取的Web服务组合规则进行解析;从候选Web服务中选择一组Web服务组合;利用Web服务组合引擎获取所选Web服务组合中的各Web服务的QoS指标;基于反射技术来获取所选Web服务组合中的各Web服务的输出参数;判断所获取的各Web服务的QoS指标和/或Web服务输出参数是否满足Web服务组合规则,以确定所选Web服务组合是否为所需Web服务组合,其中,在所获得的各Web服务的QoS指标和Web服务输出参数都满足Web服务组合规则时,所选Web服务组合被确定为所需Web服务组合。
文档编号H04L29/08GK101645935SQ20091018723
公开日2010年2月10日 申请日期2009年8月31日 优先权日2009年8月31日
发明者茜 于, 孙福权, 张益民, 磊 袁, 陈廷斌 申请人:东软集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1