CN104166733B - 一种基于依赖图模型的Web服务组合结果修复方法 - Google Patents

一种基于依赖图模型的Web服务组合结果修复方法 Download PDF

Info

Publication number
CN104166733B
CN104166733B CN201410447326.9A CN201410447326A CN104166733B CN 104166733 B CN104166733 B CN 104166733B CN 201410447326 A CN201410447326 A CN 201410447326A CN 104166733 B CN104166733 B CN 104166733B
Authority
CN
China
Prior art keywords
web service
input
web
output
combination result
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.)
Active
Application number
CN201410447326.9A
Other languages
English (en)
Other versions
CN104166733A (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.)
Nanjing University
Original Assignee
Nanjing 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 Nanjing University filed Critical Nanjing University
Priority to CN201410447326.9A priority Critical patent/CN104166733B/zh
Publication of CN104166733A publication Critical patent/CN104166733A/zh
Application granted granted Critical
Publication of CN104166733B publication Critical patent/CN104166733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本文公开了一种基于依赖图模型的Web服务组合结果修复方法,包含如下步骤:步骤1,去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务;步骤2,检验Web服务组合结果的可修复性;步骤3,根据可修复的不同情况对Web服务组合结果进行修复。本发明能够在Web服务组合结果出现问题时,通过对Web服务组合结果进行修复的方式来组合新的Web服务组合结果,相对现有技术重新组合的方式效率要高很多。

Description

一种基于依赖图模型的Web服务组合结果修复方法
技术领域
本发明涉及计算机互联网Web服务组合领域,特别是一种基于依赖图模型的Web服务组合结果修复方法。
背景技术
虽然Web服务组合支持增值的分布式应用的自动化构建,但目前大多情况是针对静态环境,没有考虑现实是动态的,不断变化的世界。Web服务状态随时都有可能发生变化,QoS属性值的改变,Web服务变得不可被调用等等都会对组合结果产生影响。又或者当用户的需求发生改变时,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服务组合结果修复方法。
发明内容:为了解决上述技术问题,本发明公开了一种能够从Web服务依赖图中恢复Web服务组合结果的Web服务组合结果修复方法,包含如下步骤:
步骤1,去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务:从Web服务依赖图中去除那些不可调用的Web服务,并且去除那些与不可调用的Web服务输入输出对象相连的边。如果去除相连的边后,与不可调用的Web服务相连的Web服务的输入仍然能够得到满足则不作处理,否则去除该服务。
其中,对原有的服务组合结果的组合过程包含以下几个步骤:
1.1构建Web服务依赖图:
将一个Web服务记为WS<Input,Output,QoS>,Input表示Web服务WS能够被激活所必需满足的输入集合,记为Input<in1,in2,...,inn>,其中,ini为单一的输入,i=1,2,...,n,n表示输入的总数量,Output是指执行Web服务WS后能够得到的所有输出集合,记为Output<out1,out2,...,outm>,其中,outj为单一的输出,j=1,2,...,m,m表示输出的总数量,QoS指WS的非功能属性,包括响应时间RT和吞吐量TP;
对于用户给定的请求<Rin,Rout>,Rin表示用户给定的输入集合,Rout表示用户需要得到的输出集合;从用户给定的输入集合Rin开始,逐层添加可被调用执行的Web服务,直到得到用户需要的所有的输出集合Rout;当且仅当该Web服务的所有输入参数都已得到,则Web服务可被调用执行;
第l层Ll添加的Web服务满足:
即在第l层添加的第x个Web服务WSl,x在第l层之前的第k层没有被添加,并且当该Web服务在第l层可被调用执行时必须添加在第l层;其中是指第l层的第x个Web服务输入集合,Outputp是指第p层中所有Web服务的输出集合的并集,2≤p≤l-1,1<l<C,C为总层数,Lk表示第k层,WSl,x表示第l层的第x个Web服务;
对于第l层的每一个Web服务的每一个输出outj,当输出outj跨越一层以上作为后面第h层中Web服务的输入时,l+1≤h≤C,在跨越的每层中都添加一个虚拟Web服务,该虚拟Web服务的输入和输出都设为outj,且具有最高的QoS值,把第一层输入集合Rin和最后一层输出集合Rout也分别作为一个虚拟Web服务;
1.2 计算QoS值
从输入层到输出层,对于第l层的第x个Web服务,WSl,x∈Ll,l=2,3,...,C,该Web服务的输入集合当第l-1层的第y个Web服务WSl-1,y∈Ll-1,如果ini即输入ini属于集合有且ini即输入ini属于集合则把Web服务WSl-1,y加入到alll-1(ini)集合中,其中,alll-1(ini)是指在第l-1层能够输出ini的Web服务集合,初始为空;为第l-1层的第y个Web服务WSl-1,y的输出集合;
对所有的alll-1(ini)集合,输入ini能够得到的最小的响应时间为Web服务集合alll-1(ini)中的Web服务执行完所需的具有最小时间Web服务bestrt(ini),即bestrt(ini)=min{alll-1(ini)},则从输入开始到执行完Web服务WSl,x所需要的最小时间RT.WSl,x为得到该Web服务所有输入中最大的响应时间max{bestrt(ini)}加上该Web服务本身执行的时间WSl,x.RT,即RT.WSl,x=max{bestrt(ini)}+WSl,x.RT,其中,RT.WSl,x是指从输入开始到执行完Web服务WSl,x所需的最小时间,WSl,x.RT为执行Web服务WSl,x本身需要的时间,bestrt(ini)为Web服务集合alll-1(ini)中的Web服务执行完所需的具有最小时间Web服务,max{bestrt(ini)}是指WSl,x所有输入参数对应的Web服务中最大相应时间;
对所有的alll-1(ini)集合,输入ini能够得到的具有最大吞吐量的Web服务besttp(ini)=max{alll-1(ini)},则从输入开始到执行完Web服务WSl,x所能产生的最大吞吐量TP.WSl,x取为得到该Web服务所有输入和Web服务本身执行所产生的吞吐量中最小值,即TP.WSl,x=min{besttp(ini),WSl,x.TP},其中,TP.WSl,x是指从输入开始到执行完Web服务WSl,x所能提供的最大吞吐量,WSl,x.TP为Web服务WSl,x所能提供的吞吐量,besttp(ini)为输入ini能够得到的具有最大吞吐量的Web服务,min{besttp(ini),WSl,x.TP}为取所有besttp(ini)和WSl,x中吞吐量的最小值,由此得到当前Web服务WSl,x能够获得的最高的QoS值;
1.3 约减冗余的Web服务
对于第l层的Web服务WSl,x,其输入集合由步骤1.1.2得到的alll-1(ini)、bestrt(ini)和besttp(ini)进行如下操作:
求最小响应时间,对中所有的输入ini,从i=1到i=n,查看所有的alll-1(inq),1≤q≤n,如果集合alll-1(inq)中包含bestrt(ini)中的Web服务,则修改bestrt(inq)=bestrt(ini);由此,Web服务WSl,x保留的第l-1层的Web服务集为产生该Web服务WSl,x输入的具有最小响应时间的Web服务的并集setrt(WSl,x),即setrt(WSl,x)={bestrt(ini)|i=1,2,...,n};
求最大吞吐量,对中所有的输入ini,从i=1到i=n,查看所有的alll-1(inq),1≤q≤n,如果集合alll-1(inq)中包含besttp(ini)中的Web服务,则修改besttp(inq)=besttp(ini);由此Web服务WSl,x保留的第l-1层的Web服务集为产生该Web服务WSl,x输入的具有最大吞吐量的Web服务的并集settp(WSi,j),即settp(WSi,j)={besttp(ini)|i=1,2,...,l};
1.4 选取Web服务
在最后一层输出层选取具有最高QoS值的Web服务,然后选取前面一层相应的Web服务集合,依次进行下去直到第一层输入层。
步骤2,检验Web服务组合结果的可修复性,分为以下三种情况:
情况2.1,当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,能够通过选取其他路径而达到修复目的时,判断所述Web服务组合结果为无需扩展可修复的;
情况2.2,当Web服务组合当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,不能够通过选取其他路径而达到修复目的,但是能够通过扩展Web服务依赖图达到修复的目的时,判断所述Web服务组合结果为需扩展可修复的;
情况2.3,当Web服务组合当Web服务组合结果出现问题需要进行修复时,以上两种方式都行不通时,判断Web服务组合结果为不可修复的。
步骤3,根据可修复的不同情况对Web服务组合结果进行修复:
首先,对于情况2.1,执行如下步骤:
2.1.1,从Web服务依赖图中出去出现问题的Web服务,并且去除那些与出现问题的Web服务的输入/输出对象相连的边;
2.1.2,如果去除相连的边后,与出现问题的Web服务相关的Web服务的输入还能得到满足,则重新计算这些Web服务的QoS属性值;否则,依次去除输入不能得到满足的Web服务;
2.1.3,去除无法再调用的Web服务后,查看用户想要得到的输出对象是否仍然能够得到满足,如果是,则反向遍历Web服务依赖图得到另一个有效的Web服务组合结果;否则,判断Web服务组合结果不属于无需扩展可修复的情况;
其次,对于情况2.2,执行以下步骤:
2.2.1,在Web服务依赖图中去除Web服务组合结果出现问题的Web服务后相应的后继服务集后,在最后一层对Web服务依赖图进行扩展,直到用户所有的出对象都得到满足或者Web服务依赖图不可再扩展;
2.2.2,当扩展Web服务依赖图扩展完成用户所有的输出对象都得到满足后,根据步骤1.1.2和步骤1.1.3对QoS进行优化和对冗余服务进行约减;
2.2.3,通过后向遍历Web服务依赖图得出修复后的Web服务组合结果。
最后,对于情况2.3,如果无法通过扩展来满足用户请求的所有输出对象得到满足,则判断Web服务不可修复。
有益效果:本发明能够在Web服务组合结果出现问题时,通过对Web服务组合结果进行修复的方式来组合新的Web服务组合结果,相对现有技术重新组合的方式效率要高很多。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为本发明Web服务组合结果修复方法流程图。
图2为Web服务组合结果图。
图3为通过需扩展可修复方式进行修复的结果图。
图4为最后修复结果图。
具体实施方式
如图所示,本发明公开了基于依赖图模型的Web服务组合结果修复方法,包含如下步骤:
步骤1,去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务:从Web服务依赖图中去除那些不可调用的Web服务,并且去除那些与不可调用的Web服务输入输出对象相连的边。如果去除相连的边后,与不可调用的Web服务相连的Web服务的输入仍然能够得到满足则不作处理,否则去除该服务。
步骤2,检验Web服务组合结果的可修复性,分为以下三种情况:
情况2.1,当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,能够通过选取其他路径而达到修复目的时,判断所述Web服务组合结果为无需扩展可修复的;
情况2.2,当Web服务组合当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,不能够通过选取其他路径而达到修复目的,但是能够通过扩展Web服务依赖图达到修复的目的时,判断所述Web服务组合结果为需扩展可修复的;
情况2.3,当Web服务组合当Web服务组合结果出现问题需要进行修复时,以上两种方式都行不通时,判断Web服务组合结果为不可修复的。
步骤3,根据可修复的不同情况对Web服务组合结果进行修复:
首先,对于情况2.1,执行如下步骤:
2.1.1,从Web服务依赖图中出去出现问题的Web服务,并且去除那些与出现问题的Web服务的输入/输出对象相连的边;
2.1.2,如果去除相连的边后,与出现问题的Web服务相关的Web服务的输入还能得到满足,则重新计算这些Web服务的QoS属性值;否则,依次去除输入不能得到满足的Web服务;
2.1.3,去除无法再调用的Web服务后,查看用户想要得到的输出对象是否仍然能够得到满足,如果是,则反向遍历Web服务依赖图得到另一个有效的Web服务组合结果;否则,判断Web服务组合结果不属于无需扩展可修复的情况;
其次,对于情况2.2,执行以下步骤:
2.2.1,在Web服务依赖图中去除Web服务组合结果出现问题的Web服务后相应的后继服务集后,在最后一层对Web服务依赖图进行扩展,直到用户所有的出对象都得到满足或者Web服务依赖图不可再扩展;
2.2.2,当扩展Web服务依赖图扩展完成用户所有的输出对象都得到满足后,根据步骤1.1.2和步骤1.1.3对QoS进行优化和对冗余服务进行约减;
2.2.3,通过后向遍历Web服务依赖图得出修复后的Web服务组合结果。
最后,对于情况2.3,如果无法通过扩展来满足用户请求的所有输出对象得到满足,则判断Web服务不可修复。
实施例1
对于用户的一个请求(Rin,Rout),其中Rin={x,y,z},Rout={u,v,w}。根据用户的请求按照Web服务组合方法中的步骤1中服务组合结果组合过程可以组合出图2中的组合结果。
图2中,圆角矩形A~J代表Web服务,圆角矩形A~J内后面的数字代表QoS属性值(图中以响应时间为例),小圆a~z代表Web服务的输入输出,对于当前Web服务而言前面连接的是输入,后面连接的是输出。圆角矩形A、D、H和I为最后被选取的Web服务。
当Web服务H出现问题无法再调用时,我们发现其后继Web服务集I,J也变的不可调用,但是我们可以看出,用户的需求u,v,w仍然能够得到满足。因为用户的输出请求中的w可以有Web服务F得出,此种情况便称之为无需扩展可修复情形。
处理方式为:首先去除Web服务H,与Web服务H相连的边f,g也相应的去除,于是我们发现Web服务I的输入g得不到满足,J的输入f得不到满足,Web服务I,J变得不可调用,因此,我们去除Web服务I,J。输出请求中的w可以由Web服务F得到,于是反向遍历得出新的组合结果。
当Web服务D出现问题时,由于用户的输出请求中的v得不到满足,这时,我们要对Web服务依赖图进行扩展,扩展从最后一层开始,扩展方式如Web服务构建算法一样。如图3所示,服务D变为不可用节点。通过在最后一层扩展后,我们能够得到用户输出请求中的v,这样用户的输出请求都能够得到满足,如图中所示,u由服务E得出,v由服务K得出,w由服务I得出,这种情况便称之为需扩展可修复情形。
处理方式为:在Web服务依赖图中去除Web服务组合结果出现问题的Web服务后相应的后继服务集后,在最后一层对Web服务依赖图进行扩展,直到用户所有的输出对象都得到满足或者Web服务依赖图不可再扩展。如图3所示,Web服务K为扩展后添加的Web服务。用户请求输出参数v可由新添加的Web服务K得到。最后通过QoS优化算法和冗余服务约减算法对QoS进行优化和对冗余服务进行约减,通过后向遍历Web服务依赖图得出修复后的Web服务组合结果,如图4,A、C、E、H、I和J矩形代表最终选取的Web服务。
实施例2
下面以一个简单的互联网旅游服务推荐为例来说明,当用户希望互联网旅游服务软件帮忙推荐景点和预订酒店时,用户的具体请求为(Rin,Rout),其中Rin={x,y,z},Rout={u,v,w}。x代表时间,y代表地点,z代表预算。u代表景点,v代表酒店,w代表花费。根据用户的请求按照Web服务组合方法中的步骤1中服务组合结果组合过程可以组合出图2中的组合结果。
图2中,圆角矩形A~J代表Web服务,A~C、H代表4家旅行社,D~E代表景点推荐系统,F、I~J代表花费预算系统。圆角矩形A~J内后面的数字代表QoS属性值(图中以响应时间为例),小圆a~z代表Web服务的输入输出,对于当前Web服务而言前面连接的是输入,后面连接的是输出。圆角矩形A、D、H和I代表最后被选取的Web服务。
当旅行社H无法代理安排时,我们发现和旅行社有合作关系的I、J预算系统也不可用,但是我们可以看出,用户的需求(景点,酒店,花费)仍然能够得到满足。因为用户的输出请求中的花费可以有Web服务花费预算系统得出,此种情况便称之为无需扩展可修复情形。
处理方式为:首先去除旅行社H,与旅行社H相连的边f,g也相应的去除,于是我们发现花费预算系统I的输入g得不到满足,J的输入f得不到满足,因此,我们去除花费预算系统I,J。输出请求中的预算可以由花费预算系统F得到,于是反向遍历得出新的组合结果。
当景点推荐系统D出现问题时,由于用户的输出请求中的v(酒店)得不到满足,这时,我们要对Web服务依赖图进行扩展,扩展从最后一层开始,扩展方式如Web服务构建算法一样。如图3所示,Web服务D(景点推荐服务)变为不可用节点。通过在最后一层扩展后,执行服务K(酒店预订)后,我们能够得到用户输出请求中的v(酒店),这样用户的输出请求都能够得到满足,如图所示,这种情况便称之为需扩展可修复情形。
处理方式为:在Web服务依赖图中去除Web服务组合结果出现问题的Web服务后相应的后继服务集后,在最后一层对Web服务依赖图进行扩展,直到用户所有的输出对象都得到满足或者Web服务依赖图不可再扩展。如图3所示,酒店预订系统K为扩展后添加的Web服务。用户请求输出参数v(酒店)可由新添加的酒店预订系统K得到。最后通过QoS优化算法和冗余服务约减算法对QoS进行优化和对冗余服务进行约减,通过后向遍历Web服务依赖图得出修复后的Web服务组合结果,如图4,圆角矩形A、C、E、H、I和J代表最终选取的Web服务。

Claims (3)

1.一种基于依赖图模型的Web服务组合结果修复方法,其特征在于,包含如下步骤:
步骤1,进行Web服务组合结果组合,去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务;
步骤2,检验Web服务组合结果的可修复性;
步骤3,根据可修复性的不同情况对Web服务组合结果进行修复;
步骤1包括以下步骤:
1.1Web服务组合结果组合过程包含以下步骤:
1.1.1构建Web服务依赖图:
将一个Web服务记为WS<Input,Output,QoS>,Input表示Web服务WS能够被激活所必需满足的输入集合,记为Input<in1,in2,…,inn>,其中,ini为单一的输入,i=1,2,…,n,n表示输入的总数量,Output是指执行Web服务WS后能够得到的所有输出集合,记为Output<out1,out2,…,outm>,其中,outj为单一的输出,j=1,2,…,m,m表示输出的总数量,QoS指WS的非功能属性,包括响应时间RT和吞吐量TP;
对于用户给定的请求<Rin,Rout>,Rin表示用户给定的输入集合,Rout表示用户需要得到的输出集合;从用户给定的输入集合Rin开始,逐层添加可被调用执行的Web服务,直到得到用户需要的所有的输出集合Rout;当且仅当该Web服务的所有输入参数都已得到,则Web服务可被调用执行;
第l层Ll添加的Web服务满足:
即在第l层添加的第x个Web服务WSl,x在第l层之前的第k层没有被添加,并且当该Web服务在第l层可被调用执行时必须添加在第l层;其中是指第l层的第x个Web服务输入集合,Outputp是指第p层中所有Web服务的输出集合的并集,2≤p≤l-1,1<l<C,C为总层数,Lk表示第k层,WSl,x表示第l层的第x个Web服务;
对于第l层的每一个Web服务的每一个输出outj,当输出outj跨越一层以上作为后面第h层中Web服务的输入时,l+1≤h≤C,在跨越的每层中都添加一个虚拟Web服务,该虚拟Web服务的输入和输出都设为outj,且具有最高的QoS值,把第一层输入集合Rin和最后一层输出集合Rout也分别作为一个虚拟Web服务;
1.1.2计算QoS值:
从输入层到输出层,对于第l层的第x个Web服务,WSl,x∈Ll,l=2,3,…,C,该Web服务的输入集合当第l-1层的第y个Web服务WSl-1,y∈Ll-1,如果即输入ini属于集合有且即输入ini属于集合则把Web服务WSl-1,y加入到alll-1(ini)集合中,其中,alll-1(ini)是指在第l-1层能够输出ini的Web服务集合,初始为空;为第l-1层的第y个Web服务WSl-1,y的输出集合;
对所有的alll-1(ini)集合,输入ini能够得到的最小的响应时间为Web服务集合alll-1(ini)中的Web服务执行完所需的具有最小时间Web服务bestrt(ini),即bestrt(ini)=min{alll-1(ini)},则从输入开始到执行完Web服务WSl,x所需要的最小时间RT.WSl,x为得到该Web服务所有输入中最大的响应时间max{bestrt(ini)}加上该Web服务本身执行的时间WSl,x.RT,即
RT.WSl,x=max{bestrt(ini)}+WSl,x.RT,其中,RT.WSl,x是指从输入开始到执行完Web服务WSl,x所需的最小时间,WSl,x.RT为执行Web服务WSl,x本身需要的时间,bestrt(ini)为Web服务集合alll-1(ini)中的Web服务执行完所需的具有最小时间Web服务,max{bestrt(ini)}是指WSl,x所有输入参数对应的Web服务中最大响应时间;
对所有的alll-1(ini)集合,输入ini能够得到的具有最大吞吐量的Web服务besttp(ini)=max{alll-1(ini)},则从输入开始到执行完Web服务WSl,x所能产生的最大吞吐量TP.WSl,x取为得到该Web服务所有输入和Web服务本身执行所产生的吞吐量中最小值,即TP.WSl,x=min{besttp(ini),WSl,x.TP},其中,TP.WSl,x是指从输入开始到执行完Web服务WSl,x所能提供的最大吞吐量,WSl,x.TP为Web服务WSl,x所能提供的吞吐量,besttp(ini)为输入ini能够得到的具有最大吞吐量的Web服务,min{besttp(ini),WSl,x.TP}为取所有besttp(ini)和WSl,x中吞吐量的最小值,由此得到当前Web服务WSl,x能够获得的最高的QoS值;
1.1.3约减冗余的Web服务:
对于第l层的Web服务WSl,x,其输入集合由步骤1.1.2得到的alll-1(ini)、bestrt(ini)和besttp(ini)进行如下操作:
求最小响应时间,对中所有的输入ini,从i=1到i=n,查看所有的alll-1(inq),1≤q≤n,如果集合alll-1(inq)中包含bestrt(ini)中的Web服务,则修改bestrt(inq)=bestrt(ini);由此,Web服务WSl,x保留的第l-1层的Web服务集为产生该Web服务WSl,x输入的具有最小响应时间的Web服务的并集setrt(WSl,x),即setrt(WSl,x)={bestrt(ini)|i=1,2,…,n};
求最大吞吐量,对中所有的输入ini,从i=1到i=n,查看所有的alll-1(inq),1≤q≤n,如果集合alll-1(inq)中包含besttp(ini)中的Web服务,则修改besttp(inq)=besttp(ini);由此Web服务WSl,x保留的第l-1层的Web服务集为产生该Web服务WSl,x输入的具有最大吞吐量的Web服务的并集settp(WSi,j),即settp(WSi,j)={besttp(ini)|i=1,2,…,l};
1.1.4选取Web服务:
在最后一层输出层选取具有最高QoS值的Web服务,然后选取前面一层相应的Web服务集合,依次进行下去直到第一层输入层;
1.2去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务:
从Web服务依赖图中去除不可调用的Web服务,并且去除与不可调用的Web服务输入输出对象相连的边;如果去除相连的边后,与不可调用的Web服务相连的Web服务的输入仍然能够得到满足则不作处理,否则去除该服务。
2.根据权利要求1所述的方法,其特征在于,步骤2中包括以下步骤:
检验Web服务组合结果的可修复性,可分为以下3种情况:
情况2.1,当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,能够通过选取其他路径而达到修复目的时,判断所述Web服务组合结果为无需扩展可修复的;
情况2.2,当Web服务组合当Web服务组合结果出现问题需要进行修复时,在去除不可调用的Web服务以及相应后继服务集中不可调用的Web服务后,不能够通过选取其他路径而达到修复目的,但是能够通过扩展Web服务依赖图达到修复的目的时,判断所述Web服务组合结果为需扩展可修复的;
情况2.3,当Web服务组合当Web服务组合结果出现问题需要进行修复时,以上两种方式都行不通时,判断Web服务组合结果为不可修复的。
3.根据权利要求2所述的方法,其特征在于,步骤3中包括以下步骤:
首先,对于情况2.1,执行如下步骤:
2.1.1,从Web服务依赖图中除去出现问题的Web服务,并且去除那些与出现问题的Web服务的输入/输出对象相连的边;
2.1.2,如果去除相连的边后,与出现问题的Web服务相关的Web服务的输入还能得到满足,则重新计算这些Web服务的QoS属性值;否则,依次去除输入不能得到满足的Web服务;
2.1.3,去除无法再调用的Web服务后,查看用户想要得到的输出对象是否仍然能够得到满足,如果是,则反向遍历Web服务依赖图得到另一个有效的Web服务组合结果;否则,判断Web服务组合结果不属于无需扩展可修复的情况;
其次,对于情况2.2,执行以下步骤:
2.2.1,在Web服务依赖图中去除Web服务组合结果出现问题的Web服务以及相应的后继服务集后,在最后一层对Web服务依赖图进行扩展,直到用户所有的输出对象都得到满足或者Web服务依赖图不可再扩展;
2.2.2,当扩展Web服务依赖图扩展完成用户所有的输出对象都得到满足后,根据步骤1.1.2和步骤1.1.3对QoS进行优化和对冗余服务进行约减;
2.2.3,通过后向遍历Web服务依赖图得出修复后的Web服务组合结果;
最后,对于情况2.3,如果无法通过扩展来满足用户请求的所有输出对象,则判断Web服务不可修复。
CN201410447326.9A 2014-09-03 2014-09-03 一种基于依赖图模型的Web服务组合结果修复方法 Active CN104166733B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410447326.9A CN104166733B (zh) 2014-09-03 2014-09-03 一种基于依赖图模型的Web服务组合结果修复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410447326.9A CN104166733B (zh) 2014-09-03 2014-09-03 一种基于依赖图模型的Web服务组合结果修复方法

Publications (2)

Publication Number Publication Date
CN104166733A CN104166733A (zh) 2014-11-26
CN104166733B true CN104166733B (zh) 2017-07-18

Family

ID=51910546

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410447326.9A Active CN104166733B (zh) 2014-09-03 2014-09-03 一种基于依赖图模型的Web服务组合结果修复方法

Country Status (1)

Country Link
CN (1) CN104166733B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971683B (zh) * 2019-11-28 2021-06-15 海南大学 基于强化学习的服务组合方法
CN112765407B (zh) * 2020-12-30 2022-11-11 重庆邮电大学 物联网环境下基于用户偏好的QoS服务组合方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102087664A (zh) * 2011-01-27 2011-06-08 深圳市五巨科技有限公司 一种移动终端访问网络的优化方法、系统及移动终端
CN102546754B (zh) * 2011-11-23 2014-11-26 河南理工大学 服务质量可定制的Web服务组合方法
CN103108044B (zh) * 2013-02-04 2015-08-19 南京大学 一种基于依赖图约减和QoS保持的Web服务组合方法
CN103473100B (zh) * 2013-09-17 2016-08-17 中国科学院软件研究所 一种基于依赖关系的Web服务替换方法

Also Published As

Publication number Publication date
CN104166733A (zh) 2014-11-26

Similar Documents

Publication Publication Date Title
CN109032521B (zh) 存储卷创建方法、装置、服务器及存储介质
CN110430206B (zh) 基于脚本模板化生成配置防火墙安全策略的方法
CN102456031B (zh) 一种MapReduce系统和处理数据流的方法
CN104166733B (zh) 一种基于依赖图模型的Web服务组合结果修复方法
CN107924391A (zh) 共享协同编辑文档的方法和装置
JP2012157239A (ja) volt/VAR潮流最適化を加速するためのシステム、方法、および装置
CN102289473A (zh) 一种多服务器分页查询的装置及方法
CN109583746A (zh) 设置流程的路由规则的方法及装置、可读存储介质
CN105743946A (zh) 模板部署方法及装置
CN110083651A (zh) 一种数据加载的方法和装置
CN105930447A (zh) 一种将树形嵌套数据转换为平面数据表的方法
Fox et al. User manual for GingerALE 2.3
JP2010176162A (ja) 電源設計プログラム、方法並びに装置及びコンピュータネットワーク
CN103108044B (zh) 一种基于依赖图约减和QoS保持的Web服务组合方法
US8996390B2 (en) Computer readable medium, operation controlling method, and operation control system
CN105741155A (zh) 窗帘订单处理方法
CN111462292B (zh) 图层化渲染方法、介质、设备及装置
CN110019380A (zh) 一种数据查询方法、装置、服务器及存储介质
CN106331000A (zh) 一种确定服务方案的方法及装置
CN115935493B (zh) 一种二维cad图纸转bim模型方法及系统
JP5854132B2 (ja) 情報処理方法、装置及びプログラム
JP2011076268A (ja) 会議進行役選出方法、装置及びプログラム
CN103279339B (zh) 一种代码上线系统及方法
CN110211063B (zh) 一种图像处理方法、装置、电子设备和系统
Gołuńska et al. A consensus reaching support system based on concepts of ideal and anti-ideal point

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant