CN102571789B - 一种增强soa可生存性的降级服务替换验证方法 - Google Patents
一种增强soa可生存性的降级服务替换验证方法 Download PDFInfo
- Publication number
- CN102571789B CN102571789B CN201110457694.8A CN201110457694A CN102571789B CN 102571789 B CN102571789 B CN 102571789B CN 201110457694 A CN201110457694 A CN 201110457694A CN 102571789 B CN102571789 B CN 102571789B
- Authority
- CN
- China
- Prior art keywords
- service
- contract
- message
- bpel
- services
- 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
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于SOA技术领域,具体为增强SOA可生存性的降级服务替换验证方法。主要步骤:1.采用进程代数形式化建模WS-BPEL描述文件所体现的组合服务交互协议,包括:服务契约,成员服务可允许的消息交互;2.流程决策点,分析流程形式服务的消息操作(即发送、接受消息)选择。采用白盒策略描述WS-BPEL流程形式的替换服务和候选服务、以及服务组合和替换的上下文环境。3.将服务替换准则确定为服务相容性被定义为组合系统的可执行完成属性。在此基础上,4.验证实施替换后不影响系统相容性的降级服务替换,以及实施替换后的降级系统是否满足用户需求。本发明解决了现有技术无法验证降级服务替换正确性的问题。
Description
技术领域
本发明属于SOA技术领域,具体涉及一种SOA降级服务替换正确性验证的方法。
背景技术
任何系统都不可避免地会发生故障。面向服务的架构SOA(Service Oriented Architecture)的软件(服务)系统也不例外。众所周知,以备用的候选服务替代产生故障的服务或系统,是一种性质有效的系统可用性增强方法。系统从发生故障到恢复正常工作的这个紧急修复时间内,成功实施服务替换面临的最大挑战是迅速找到可用的候选服务。作为一种特例,迅速找到与被替换服务完全等价的候选服务。
实践中,对于一个关键任务(Mission-Critical)系统,在其故障修复期间内,既无法期望系统立即恢复工作(因为故障),又不容忍整个系统彻底失效(因为承担着关键任务)。所能选择的,是一个具有可生存性的系统。即,系统不必工作在正常状态,但仍然能够继续提供有限的功能的服务,尤其是提供核心服务。在这种紧急情况下,允许降级服务替换是主要应急措施之一。
在这种可生存性环境中,降级服务替换面临的关键问题,是采取什么替换关系理论可保证实施替换后的系统仍可保持服务相容性。
中国专利申请(申请号200710025615.X,公开号101130402)给出了一种基于行为一致的服务替换方法。该方法要求,服务提供者在注册服务时须提供服务的行为描述,即合法操作序列。服务使用者在实施替换时检查候选服务与原始被替换服务的行为一致性。在服务替换时,行为一致性通过行为观察一致性规则来验证。
另一中国专利申请(申请号201110058676.2,公开号102082737A)给出了一种基于服务优先级的替换方法。该方法分析了组合服务的非功能属性,即服务质量QoS(Quality of Services),并以此定义服务优先级。专利申请201110058676.2不具备降级替换的能力和相应的验证技术。
上述两项中国专利申请,分别从功能属性和非功能属性方面仅保证了等价(或升级)服务替换的正确性,而不能完成降级服务可替换性的验证。在可生存性环境中的紧急修复时间内,往往难以迅速找到与被替换服务完全等价的候选服务。
此外,在愈来愈普及的云计算环境中,为了降低运维成本,服务消费者通常会主动采用降级服务。
因此,研究降级服务的可替换性验证技术很有必要。
发明内容
本发明的目的在于提供一种SOA降级服务替换正确性验证的方法,以解决现有技术只能从功能属性和非功能属性方面保证等价(或升级)服务替换的正确性,而不能完成降级服务可替换性的验证问题。
本发明是针对具有交互协议、流程形式服务的降级替换验证。一种典型的对象是国际工业标准WS-BPEL(Web Services – Business Process Execution Language)组合流程服务。对于替换服务和候选服务,以及服务组合和替换的上下文环境,其服务接口、接口上的消息操作以及消息交互协议均为已知。
任何软件系统都不可避免发生故障,系统从发生故障到恢复正常工作的紧急修复时间内,成功实施服务替换面临的最大挑战是迅速找到可用的候选服务。尤其是,很难迅速找到与被替换服务完全等价的候选服务。
本发明针对不同结构的候选服务,验证服务替换的正确性,特别地,验证降级服务替换的正确性,并满足如下要求:
确认实施替换后不影响系统相容性的降级服务替换;
确认实施替换后的系统能满足用户要求。
本发明提出的SOA降级服务替换正确性验证方法,其流程如附图1,具体步骤为:
步骤一、采用进程代数形式化建模WS-BPEL描述文件所体现的组合服务交互协议
国际工业标准WS-BPEL是最为广泛使用的组合服务描述方式。本发明利用进程代数这一形式化工具对服务及其组合环境进行形式化建模,如附图1中1.1所示。其中,成员服务及组合服务的系统模型表示为服务契约。服务契约用以描述服务外部可观测的消息行为;由于WS-BPEL提供了参与组合的服务集合、服务的调用关系和消息的往来信息,这里便可采用白盒策略描述WS-BPEL流程形式的替换服务和候选服务以及服务组合和替换的上下文环境(附图1中1.2)。
服务契约的操作语义规则详见附图1。其中,表示服务契约执行操作后演化为。表示隐藏操作, 意味着在中的消息操作 变为。即,当多个服务组合成一个服务系统时,某些服务可能仅提供部分接口,并且某些接口及其相关消息操作变成了内部不可观察的。
步骤二、建立流程决策点,分析WS-BPEL流程形式服务的消息交互行为
在WS-BPEL流程服务交互环境中,区分三类服务契约的决策点:
(1)仅有发送消息操作的决策点;
(2)仅有接受消息操作的决策点;
(3)同时包括发送消息操作和接受消息操作的决策点。
其中,第三类流程决策点是指同一服务接口的发送消息操作和接受消息操作。
步骤三、建立服务替换正确性准则,定义服务相容性
包括两大部分:其一,是在所有计算路径上完成属性,如附图1中3.1,其二,在部分计算路径上的“测试成功”,如附图1中3.2部分。
步骤四、降级服务替换正确性验证
包括两部分(如附图1中4):其一,服务子契约以较少的可交换消息集保持了所有计算路径上的服务相容性,如附图1中4.1;其二,服务契约的测试精化,在部分计算路径上保持了服务相容性,如附图1中4.2。
在上述条件中,条件(1)要求二者具有相同类型的决策点;条件(2)要求子契约不能提供更少的接收消息的能力;条件(3)要求子契约不能有更少的发送消息决定性选择。递归条件描述了在交互协议中对操作次序的要求。
在使用子契约实施替换后,一个系统仍可保持系统原有的相容性。
然而,由于使用子契约实施的替换是不等价替换,所以,系统的某些服务行为可能会受到影响。这个影响分为两方面:
第一,如果子契约提供了更多的消息接收能力,并且具有相同的发送消息非决定性选择,那么,这个替换不影响系统的运行,并且系统将具有更多的服务能力。
第二,如果子契约提供了更多的消息接收能力,但是发送消息的非决定性选择减少,即发送更少的消息,那么,替换会对系统的全局行为产生两个方面的影响,即:
(1) 较少的消息交换集合;
(2)较少的可完成计算路径。
最后,实现了增强SOA系统可生存性的降级服务替换,如附图1中5。
本发明采用进程代数对已注册的流程服务进行行为建模(即服务契约),而不要求服务提供者在注册服务时必须提供服务的行为描述。对于替换关系,本发明的技术采用偏序关系(即子服务契约),而不是等价关系理论(如行为一致性等)。因此可获得专利申请200710025615.X所不具备的降级服务替换能力。
本发明的核心内容,即流程服务降级替换验证技术,在功能属性分析方面突破了既有的等价(或升级)服务替换技术。
本发明采用进程代数将具有交互协议的、流程形式的服务进行形式化建模;采用白盒策略,通过描述交互服务允许的接收/发送消息序列,刻画服务的消息交互行为。通过描述服务系统的契约,刻画成员服务间可允许的交互行为。服务替换准则即服务相容性被定义为组合系统的执行可完成属性。在此基础上,可验证实施替换后不影响系统相容性的降级服务替换,以及实施替换后的系统是否满足用户要求。
附图说明
图1为增强SOA系统可生存性的降级服务替换验证流程。
图2为服务契约操作语义规则。
图3为组合服务应用系统Travel。
图4具有不同的内部结构的两个WS-BPEL服务。
图5为降级形式的Travel服务。
具体实施方式
以下以旅行组合服务应用Travel为例,说明本发明的具体实施例。如附图3所示,一个简化的 Travel 应用,包括四个成员服务: Travel、Hotel、Airline和Bank。Travel接受并响应来自客户的请求,Hotel 和 Airline 分别提供酒店和航班的预定服务,Bank 为其他服务提供公共的支付服务。
在服务组合应用 Travel 中,每个角色都可由来自不同服务提供商的不同版本的具体WS-BPEL服务来实现。成员服务 Travel 也是如此。在正常情况下,Travel 的相关服务由具体服务 Trvl1 来实现。现在,由于某些系统故障,Trvl1 失效。于是,寻找 Travel 的另一具体实现Trvl2是保持整个流程得以继续执行的一种有效的办法。具体WS-BPEL服务Trvl1和Trvl2具有不同的内部结构,如附图4所示。
1、采用进程代数对两个WS-BPEL服务进行形式化建模,得到如下服务契约:
;
然而,由于比具有更少的发送消息操作,采用替换后的Travel系统将以降级的形式提供服务,如附图5所示。采用替换后的Travel系统,仅只能提供预订酒店Htl1的服务,而不能再提供预订酒店Htl2的服务。
本发明的另一种实施例是用于降低云计算中软件(服务)的运维成本的主动降级服务替换的正确性验证。
在云计算中,云服务商提供云服务,用户为使用的服务进行按需支付。为此,提供商主动提供多种等级化的服务选择,并辅以更为经济的付费模式和价格。云用户可以选择自我需要的降级服务,替换业务流程或工作流中原有成员服务。从而达到节省成本的目的。
在云计算实施例中,实施方式是形式化描述WS-BPEL服务与验证满足用户需求的降级服务替换正确性。在主动降级时,用户更多考虑在要求的部分路上的相容性。在验证满足用户需求的降级服务替换正确性时,仍须依据组件4.1的服务子契约关系保证系统在所有路径上的相容性,或者依据组件4.2的“测试成功”保持用户要求的部分路上的相容性。
Claims (1)
1.一种增强SOA可生存性的降级服务替换验证方法,其特征在于具体步骤为:
步骤一、采用进程代数形式化建模WS-BPEL描述文件所体现的组合服务交互协议
利用进程代数这一形式化工具对服务及其组合环境进行形式化建模,其中,成员服务及组合服务的系统模型表示为服务契约;所述服务契约用以描述服务外部可观测的消息行为;由于WS-BPEL提供了参与组合的服务集合、服务的调用关系和消息的往来信息,这里采用白盒策略描述WS-BPEL流程形式的替换服务和候选服务以及服务组合和替换的上下文环境;
根据服务契约的操作语义规则,表示服务契约执行操作后演化为,表示隐藏操作, 意味着在中的消息操作 变为,即,当多个服务组合成一个服务系统时,某些服务仅提供部分接口,并且某些接口及其相关消息操作变成了内部不可观察的;
步骤二、建立流程决策点,分析WS-BPEL流程形式服务的消息交互行为
在WS-BPEL流程服务交互环境中,区分三类服务契约的决策点:
(1)仅有发送消息操作的决策点;
(2)仅有接受消息操作的决策点;
(3)同时包括发送消息操作和接受消息操作的决策点;
其中,第三类流程决策点是指同一服务接口的发送消息操作和接受消息操作;
步骤三、建立服务替换正确性准则,定义服务相容性
包括两大部分:其一,是在所有计算路径上完成属性;其二,在部分计算路径上的“测试成功”;
步骤四、降级服务替换正确性验证
包括两部分:其一,服务子契约以较原契约更少的可交换消息集保持了所有计算路径上的服务相容性;其二,服务契约的测试精化,在部分计算路径上保持了服务相容性;
在使用子契约实施替换后,一个系统仍保持系统原有的相容性;
然而,由于使用子契约实施的替换是不等价替换,所以,系统的某些服务行为会受到影响,这个影响分为两方面:
第一,如果子契约提供了更多的消息接收能力,并且具有相同的发送消息非决定性选择,那么,这个替换不影响系统的运行,并且系统将具有更多的服务能力;
第二,如果子契约提供了更多的消息接收能力,但是发送消息的非决定性选择减少,即发送更少的消息,那么,替换会对系统的全局行为产生两个方面的影响,即:
(1)较原契约更少的消息交换集合;
(2)较原契约更少的可完成计算路径;
最后,实现增强SOA系统可生存性的降级服务替换;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110457694.8A CN102571789B (zh) | 2011-12-31 | 2011-12-31 | 一种增强soa可生存性的降级服务替换验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110457694.8A CN102571789B (zh) | 2011-12-31 | 2011-12-31 | 一种增强soa可生存性的降级服务替换验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102571789A CN102571789A (zh) | 2012-07-11 |
CN102571789B true CN102571789B (zh) | 2014-07-09 |
Family
ID=46416264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110457694.8A Active CN102571789B (zh) | 2011-12-31 | 2011-12-31 | 一种增强soa可生存性的降级服务替换验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102571789B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905548B (zh) * | 2014-03-27 | 2017-02-22 | 南京邮电大学 | 一种信息服务的替换对象选择方法 |
CN109783303B (zh) * | 2017-11-14 | 2022-05-03 | 中国移动通信集团黑龙江有限公司 | 一种相容性判定方法、装置及计算机可读存储介质 |
US10826770B2 (en) * | 2018-07-26 | 2020-11-03 | Cisco Technology, Inc. | Synthesis of models for networks using automated boolean learning |
CN111008026B (zh) * | 2018-10-08 | 2024-03-26 | 阿里巴巴集团控股有限公司 | 集群管理方法、装置及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132402A (zh) * | 2007-08-08 | 2008-02-27 | 南京大学 | 基于行为一致条件下进行服务发现和替换方法 |
CN102082737A (zh) * | 2011-03-11 | 2011-06-01 | 浙江大学 | 基于服务优先级的Web服务替换方法 |
-
2011
- 2011-12-31 CN CN201110457694.8A patent/CN102571789B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101132402A (zh) * | 2007-08-08 | 2008-02-27 | 南京大学 | 基于行为一致条件下进行服务发现和替换方法 |
CN102082737A (zh) * | 2011-03-11 | 2011-06-01 | 浙江大学 | 基于服务优先级的Web服务替换方法 |
Non-Patent Citations (5)
Title |
---|
Web服务合成的相容性与替换性分析;史玉良等;《计算机研究与发展》;20071115;全文 * |
刘方方等.基于进程代数的Web服务合成的替换分析.《计算机学报》.2007,第30卷(第11期), |
史玉良等.Web服务合成的相容性与替换性分析.《计算机研究与发展》.2007, |
基于进程代数的Web服务合成的替换分析;刘方方等;《计算机学报》;20071115;第30卷(第11期);全文 * |
尹可挺等.Web服务组合中基于QoS的自底向上服务替换.《浙江大学学报(工学版)》.2010,第44卷(第4期), * |
Also Published As
Publication number | Publication date |
---|---|
CN102571789A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cerny et al. | Contextual understanding of microservice architecture: current and future directions | |
Erradi et al. | SOAF: An architectural framework for service definition and realization | |
US10694402B2 (en) | Security orchestration and network immune system deployment framework | |
Amorim et al. | Systematic pattern approach for safety and security co-engineering in the automotive domain | |
Munaf et al. | Microservices architecture: Challenges and proposed conceptual design | |
CN102571789B (zh) | 一种增强soa可生存性的降级服务替换验证方法 | |
Youssef et al. | Critical decision-making on cloud computing adoption in organizations based on augmented force field analysis | |
Mobin et al. | A literature review on cloud based smart transport system | |
Kazhamiakin et al. | Cross-layer adaptation and monitoring of service-based applications | |
Iannucci et al. | IBM SmartCloud: Building a cloud enabled data center | |
CN103188326A (zh) | 一种增强soa可生存性的降级服务替换验证技术 | |
CN111161052A (zh) | 银行作业数据的处理方法及装置 | |
Zaballos et al. | Cloud Computing: Opportunities and Challenges for Sustainable Economic Development in Latin America and the Caribbean | |
Redmond et al. | The use of cloud enabled building information models-an expert analysis | |
Xiao et al. | SOA collaboration modeling, analysis, and simulation in PSML-C | |
Tsai et al. | Verification framework for dynamic collaborative services in service-oriented architecture | |
Zerva et al. | Towards design support for provenance awareness: A classification of provenance questions | |
Althani et al. | The applicability of system migration life cycle (SMLC) framework | |
Tsai et al. | Global software enterprise: A new software constructing architecture | |
Dimitrakos et al. | Service oriented infrastructures and cloud service platforms for the enterprise: a selection of common capabilities validated in real-life business trials by the BEinGRID consortium | |
Raj et al. | The cloud challenges for enterprise architects | |
Nakashiro et al. | Translation pattern of BPEL process into Promela code | |
Duan et al. | Towards value-driven business modelling based on service brokerage | |
Dustdar et al. | Integrating perfective and corrective adaptation of service-based applications | |
Aziz et al. | Enforcing reputation constraints on business process workflows |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |