1.一种面向Web基于Bigraph替换算法的服务质量监控方法,其特征在于,所述服务质量监控方法包括以下步骤:第一步、结合Bigraph理论,建立一个服务组合框架,分为两阶段;
1.1、信息抽取和细胞建模:提取服务的相关描述信息,得到服务描述元数据,基于抽取的服务信息,根据服务的语法信息匹配服务操作参数与资源状态,基于Bigraph理论构建数据细胞和数据细胞簇的结构及生物特性,代表服务的状态信息与服务间潜在的调用关系;
1.2、服务组合:将数据细胞和数据细胞簇作为服务的演化行为方式的载体。选取数据细胞和细胞簇进行服务组合,模拟服务生成组合服务的行为模式,构建基于数据细胞的服务组合模型。
第二步、基于所述的框架提出的面向Web基于Bigraph替换算法的服务质量监控方法,过程如下:
2.1:Web服务的信息抽取
在Web服务的信息抽取阶段,将服务的名称映射为s,每个服务对应一个控制C,唯一,组成规则为:C=s:control;将服务的可用性度量映射为U,将服务的端口的ID、名称和类型分别映射为pI、pN和pT,另外将端口的控制类型映射为pC,代表此端口是输入、输出还是输入/输出;将此服务和其他服务的依赖状态映射为CL,组成规则为:CL=
2.2:细胞建模
对于服务的形式化建模需要根据映射规则,将服务的结构和消息交互行为加以映射到对应形式化结构和动作,从而通过形式化的方法对服务及其组合进行进程演算;
2.3:失效服务检测
通过监控服务的质量,当发现服务失效时,自动将细胞Bigraph中的该失效服务信息删除,从而达到系统对失效服务组合的预警,后期进行相关服务的替换,进而可以保障服务的质量。
2.如权利要求1所述的面向Web基于Bigraph替换算法的服务质量监控方法,其特征在于,所述步骤2.2中,给出的形式定义如下:定义1.数据细胞的Bigraph定义是一个五元组DC=:
(2)E是包含服务集的有限边集合, 称为一条连接边;
(3)Ctrl:S→C,代表服务到控制C的映射图;
P L
(4)C、C为位置图和连接图,分别表示各计算服务的所在位置和服务之间的依赖关系;
(5)内部接口
定义2.服务的控制C是五元组C=
(2)P是当前服务控制上端口的有限集, 称为一个端口;
(3)CL=
(4)U是当前服务的可用性度量,是一个概率值;
定义3.服务的依赖层次DL代表该服务的组合结构,取值来自状态集{⊙ ,<<,>>},其中⊙,<<,>>分别代表此服务和其他服务为无依赖、前置依赖、后置依赖等关系;
定义4.端口的定义是一个四元组p=
(2)pT是该端口的类型,代表接口参数的类型;
(3)pC是该端口的控制属性,取值来自状态集 其中 分别代表该端
口是输入端口、输出端口还是输入/输出端口;
数据细胞的Bigraph定义目的在于构造数据细胞的结构和生物特性,每一个数据细胞对应一个原子服务或者复合服务,从而体现服务的结构资源特点和相互依赖关系,数据细胞的具体结构和元素定义详见表1,一个数据细胞对应Bigraph中的root,数据细胞中的每个服务对应Bigraph中的节点,服务之间的依赖关系为Bigraph中节点的连接边,每个服务的基本信息和上下文关系对应Bigraph中节点的控制,服务的每个输入、输出端口对应Bigraph中节点端口的形状;
表1
由于单个数据细胞提供的服务功能相对较为单一,但在实际应用中,为满足用户日益复杂的需求,需要从网络上选择合适的服务并按照一定的业务规则进行组合,构建可伸缩的松耦合的组合,数据细胞簇基于服务组合的四种工作流模式,由多个数据细胞按照功能属性和需求调用动态聚集组合而成;数据细胞基于Bigraph的合成、并置规则从而形成数据细胞簇,数据细胞簇同样能够消化从环境中感知吸收和其他数据细胞交流的信息,智能地与其他数据细胞进行互动,从而可以提供更加精确复杂的服务功能;DCEM中数据细胞簇的相关形式定义如下:定义5.数据细胞簇的定义是一个三元组DCC=
(2)CS是数据细胞组合结构的有限集;
(3)LinkS是数据细胞簇中各端口的连接集合, 称为两个端口的连接关系;
定义6.数据细胞的组合结构cs是一个三元组cs=
(2)St是该组合数据细胞的依赖结构,取值来自状态集{·、+、||、*},分别代表这数据细胞DCi与DCi组合是顺序、选择、并行或者循环结构;
定义7.端口的连接关系是一个二元组Link=
项语言是Bigraph动态演化的形式化规约和性质验证的基础,不同工作流模式的数据细胞簇项语言定义具有通用特征,为了更好的描述不同服务结构数据细胞簇的项语言定义,归纳总结一系列符号和定义,如表2所示:表2
通过Bigraph中项语言的表达理论和表2中基于数据细胞结构的相关定义,对上文所述的基于服务组合工作流模式构造的数据细胞簇分析,在数据细胞簇项语言形式化上下文中,定义基本代数概念,所述基本代数概念包括基调和项集;
定义8:数据细胞簇形式化定义上的基调∑由类子:数据细胞集DC、数据服务集S、边集E、内部连接集I、外部连接集O、地点集N和一系列操作符·、+、||、*组成,每个操作符f的操作数记为ar(f);
定义9:令Σ是数据细胞簇形式化定义上的基调,则基调Σ上的项集∏(Σ)是满足以下条件的最小集合:(1)每个类子变量都是项集中的元素;
(2)
(3)如果f∈Σ,且DC1,DC2,...,DCiar(f)∈∏(Σ),那么f(DC1,DC2,…,DCiar(f))∈∏(Σ);
定义10:令Σ是数据细胞簇形式化定义上的基调,∏(Σ)是基调Σ上的项集,若u(f)∈∏(Σ),则称u(f)为基于操作f的项;项的定义也可采用结构归纳定义,表示成以下形式:其中::=表示归纳定义,ELrule代表数据细胞簇Bigraph形式中边和连接的形式化定义,DCi代表单个数据细胞的项语言定义,m为数据细胞的个数。
3.如权利要求2所述的面向Web基于Bigraph替换算法的服务质量监控方法,其特征在于,所述步骤2.3中面向web基于Bigraph替换算法的服务质量监控方法流程如下:
2.3.1:设置最低服务质量的阈值Umin;
2.3.2:监控服务s的服务质量U,如果此时的服务质量低于Umin,判定该服务失去其功能,需要对包含该服务的Bigraph中的s服务信息进行删除,否则转2.3.3;
2.3.3:该服务的服务质量正常,继续进行服务监控,根据外部需求每隔一定时间后更新服务s的服务质量U,并转向2.3.2。
4.如权利要求3所述的面向Web基于Bigraph替换算法的服务质量监控方法,其特征在于,所述步骤2.3.2中,对包含该服务的Bigraph中的s服务信息进行删除的流程如下:
2.3.2.1:依次解析检测的数据细胞Bigraph BC的结构,其中服务集合Sn代表其内共有n个数据服务,读取当前已经解析的服务si,si(0
2.3.2,否则转2.3.2.2;
2.3.2.2:判断步骤2.3.2中失效服务s是否和步骤2.3.2.1中的检测服务si相同。结合定义2判断两个服务的控制C是否相同,如果两个控制C的名称CN、类型CT、端口集合P、服务依赖状态CL都一致,则代表两个服务是相同服务转2.3.2.3,否则转2.3.2.6;
2.3.2.3:结合定义3检测该服务si控制中的依赖层次DL,如果为⊙则代表无依赖关系转
2.3.2.4,否则转2.3.2.5;
2.3.2.4:删除Bigraph BC中服务si的所有信息,包括删除BC的服务集合Sn中的服务si,端口集合P中si服务端口的ID信息pI、名称pN、类型pT和控制属性pC,删除BC的位置图和连接图中的节点si,删除服务si的内连接边集合X和外连接边集合Y,如果si有site,则对应也要在BC中删除site;转2.3.2.1;
2.3.2.5:删除Bigraph BC中服务si的所有信息,包括删除BC的服务集合Sn中的服务si,端口集合P中si服务端口的ID信息pI、名称pN、类型pT和控制属性pC,删除BC的位置图和连接图中的节点si,删除服务si的内连接边集合X和外连接边集合Y,如果si有site,则对应也要在BC中删除site;结合定义3检测该服务控制的依赖层次DL,如果为<<代表和其他服务是前置依赖关系,转2.3.2.5.1,如果为》代表和其他服务是后置依赖关系,转2.3.2.5.2;
2.3.2.5.1:删除Bigraph BC中该服务si依赖的前置服务sprex的所有信息,包括删除BC的服务集合Sn中的服务sprex,端口集合P中sprex服务端口的ID信息pI、名称pN、类型pT和控制属性pC,删除BC的位置图和连接图中的节点sprex,删除服务sprex的内连接边集合X和外连接边集合Y,如果sprex有site,则对应也要在BC中删除site;转2.3.2.1;
2.3.2.5.2:删除Bigraph BC中该服务si依赖的后置服务snext的所有信息,包括删除BC的服务集合Sn中的服务snext,端口集合P中snext服务端口的ID信息pI、名称pN、类型pT和控制属性pC,删除BC的位置图和连接图中的节点snext,删除服务snext的内连接边集合X和外连接边集合Y,如果snext有site,则对应也要在BC中删除site;转2.3.2.1;
2.3.2.6:Bigraph中的该检测服务si不是失效服务,继续对其他服务进行匹配,转
2.3.2.1。