CN102103519A - 一种基于脚本的Web服务执行优化方法 - Google Patents
一种基于脚本的Web服务执行优化方法 Download PDFInfo
- Publication number
- CN102103519A CN102103519A CN2009102015320A CN200910201532A CN102103519A CN 102103519 A CN102103519 A CN 102103519A CN 2009102015320 A CN2009102015320 A CN 2009102015320A CN 200910201532 A CN200910201532 A CN 200910201532A CN 102103519 A CN102103519 A CN 102103519A
- Authority
- CN
- China
- Prior art keywords
- web service
- service
- script
- sequence
- web 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.)
- Pending
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
本发明涉及一种基于脚本的Web服务执行优化方法,包括以下步骤:a.采用Cpi演算对Web服务的描述脚本进行简约归一化;b.通过分析Web服务的BPEL脚本,提取约束规则集,给出服务可用和可达性分析方法,用于形式化验证Web服务组合偏序序列的正确性;c.分析Web服务的执行序列中各服务的约束条件和依赖关系,通过对Web服务的归一化脚本的相关性分析,给出Web服务执行序列的并行判据,通过对Web服务序列进行重排序,优化Web服务执行序列,并给出基于脚本DAG图的并行调度算法;d.基于QoS服务特征属性,通过鲁棒控制模型对性能进行评估方法和优化,建立大规模计算环境下,Web服务并发计算模型。本发明能在保证Web服务正确执行的前提下,实现Web服务的高效、优质执行。
Description
技术领域
本发明涉及Web服务技术,特别是涉及一种基于脚本的Web服务执行优化方法。
背景技术
Web服务是一种新的面向服务的体系结构,是一种基于现有成熟的Internet技术的分布式应用程序技术框架。Web服务是是基于网络的、分布式的模块化组件,由URL进行标识,它遵守标准的技术规范(SOAP、WSDL、UDDI),对外提供一组通过XML构件进行定义和描述的接口,其它应用可以通过基于因特网的协议(HTTP)及使用基于XML的消息与Web服务进行交互。Web服务技术实现了异构的计算资源、数据资源和服务资源的有效无缝聚合和广泛共享。一个Web服务可由多个网络构件集成组装形成,一个Web服务也可用调用其它Web服务,从而形成更大的应用系统,为软件复用奠定了技术基础,软件开发成本大大降低成为可能。
当前学术界和工业界都对Web服务展开了研究和实践探讨,研究热点主要集中在Web服务组合建模和验证、Web服务发现、服务质量(QoS)、服务调度等方面。尽管现有的技术使得Web服务实现可用、互操作、可扩展等特点,很好的解决了异构平台的协作问题。但是要使Web服务真正获得成功,还有许多困难和局限。主要表现在:
(1)Web服务组合的正确性尚需验证。Web服务组合的正确是Web服务正确执行的前提条件。Web服务是由多个其他服务通过服务组合而成的执行序列,服务编排和执行过程中的任何细微差错,都可能导致执行序列的错误执行,因此保证Web服务组合的正确非常重要。
(2)Web服务计算性能遭遇瓶颈。通信是分布式系统最基本的特征,Web服务采用通信协议SOAP来封装远程调用和交换的数据,SOAP本身是基于XML的协议。同时Web服务的其他协议和规范(如WSDL)也是基于XML的说明。Web服务执行时需要进行协议和规范的解析工作,由于Web服务执行是通信密集型计算,耗费在SOAP协议解析和Web服务脚本解析的延时,大大降低了Web服务执行的效率,阻碍了Web服务计算性能的提高。
(3)Web服务执行的QoS服务质量尚需保证。Web服务在保证正确执行得同时,还需要保证Web服务执行的质量(包括Web服务的可靠性、可用性、强壮等)。由于参与的Web服务的其他服务具有自治和自演化特征,例如:是否可用、响应需要花费的时间、是否能够连续工作?当它不可用时,是等待还是继续寻找其他可使用的Web服务?这都涉及Web服务执行的效率和Web服务系统的健壮。实际也就是在若干个待选服务中,如何选取质量最优的服务资源。
发明内容
本发明所要解决的技术问题就是为了克服上述现有技术存在的缺陷而提供一种基于脚本的Web服务执行优化方法。
本发明的目的可以通过以下技术方案来实现:一种基于脚本的Web服务执行优化方法,其特征在于,包括以下步骤:
a.采用Cpi演算对Web服务的描述脚本进行简约归一化;
当前形式化描述服务的方法主要包括有限自动机、Petri网、进程代数和语义网等。它们的基本原理是类似的:用形式化语言对服务组合进行建模,然后使用各自的形式化方法进行演算和推理。其中自动机理论、Petri网和语义网对服务组合建模更为直观、图形化,但是不适合服务数量较大的情况。进程代数因其简单、形式化的描述和推理特性,被认为是描述服务组合交互行为的有效方法。
Pi演算是Robin Milner提出的以移动通信为研究重点的并发理论,它常用来描述进程间的交互行为和并发通信操作。但传统的Pi演算有其局限性,不能描述进程间交互行为的约束规则和进程的归属,使用Pi演算描述多个原子服务间的协作和语义,势必非常复杂和困难。本发明通过深入分析Web服务组合的特点和BPEL的语法特征,对Pi演算进行语义扩充,给出Cpi演算的操作语义,用于表达交互进程所属的服务,以及约束条件对Web服务交互行为的影响。
Web服务的执行是其成员服务间进程交互和并发通信的过程,原子服务间要满足一定的约束规则,同时Web服务的执行会涉及大量的进程操作,而每个进程都有其对应的归属服务,即原子服务。因此本发明采用进程代数描述Web服务组合和执行,作为一种中间表达方式,类似于编译过程中的中间语言,对BPEL脚本文件进行归一化描述,表达Web服务及其成员服务的具体行为和状态变迁。
b.通过分析Web服务的BPEL脚本,提取约束规则集,给出服务可用和可达性分析方法,用于形式化验证Web服务组合偏序序列的正确性,从而保障Web服务组合的正确。
Web服务组合是满足一定约束规则的成员服务执行顺序的编排。Web服务组合正确的前提是成员服务间不违反约定的前后置约束条件。通过对Web服务的BPEL脚本分析发现,BPEL脚本中的成员服务接口描述给出了操作的参数,伙伴链和伙伴链类型则隐含了成员服务间调用关系,流程逻辑则给出服务间调用顺序关系。因此本发明对执行前的Web服务组合进行建模,通过分析和提取所有原子服务间的约束规则集,通过形式化推导验证,验证基于Cpi演算的Web服务归一化行为序列是否满足约束规则、序列是否可达和可用,实现Web服务组合的正确性验证,确保Web服务组合的正确。
c.分析Web服务的执行序列中各服务的约束条件和依赖关系,通过对Web服务的归一化脚本的相关性分析,给出Web服务执行序列的并行判据,通过对Web服务序列进行重排序,优化Web服务执行序列,并给出基于脚本DAG图的并行调度算法;
在Web服务执行过程中,服务间的交互操作(数据的传递、行为的交互制约等)是阻碍Web服务并行执行的主要因素。本发明基于Cpi演算描述的归一脚本的相关性分析,给出三种依赖关系:接口依赖、规则依赖、分支依赖。
一个BPEL描述的业务流程的调用,实际上是一个合成服务的执行过程,也就是是其原子服务操作被调用和响应的过程。原子服务操作看成是外部函数,是一条脚本段,其原子服务的WSDL文件是对函数的说明。基于脚本段的相关性分析,提取Web服务执行过程中的并行性,同时分析了在并行化过程中可能出现的死锁和互斥,通过执行序列的置换和脚本DAG图的生成和划分,提出了基于分组的Web服务调度算法。
d.基于QoS服务特征属性,通过鲁棒控制模型对性能进行评估方法和优化,建立大规模计算环境下,Web服务并发计算模型。
本发明在Web服务并发执行的基础上,研究Web服务的服务质量,使用数学模型分析成员服务特征属性,较全面地反映了组合服务的服务质量,从而实现优质、高效的Web服务。
与现有技术相比,本发明借鉴传统分布式并发经典理论,提出通过提取Web服务执行脚本中潜在的并行性,用部分并行性来弥补通讯密集情况下对Web服务脚本解析的时延;本发明是对传统并发理论的创新性运用。
本技术方案的创新性主要体现在:(1)提出基于Pi演算扩展的Cpi演算;使用Cpi演算形式化定义Web服务,并对Web服务的BPEL流程脚本进行简约归一化,将描述Web服务执行功能的BPEL脚本转化成基于Cpi演算的Web服务行为序列。(2)通过分析Web服务的BPEL脚本,提取原子服务的前后置约束条件规则集,给出原子服务可用和可达的定义,提出Web服务组合偏序序列的正确性验证方法。(3)通过对Web服务归一化脚本的相关性分析,提出Web服务执行序列的并行执行判据和基于服务脚本DAG图的并行调度算法,给出满足QoS约束的Web服务执行优化方法;
本发明能在保证Web服务正确执行的前提下,实现Web服务的高效、优质执行。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合附图对本发明作进一步说明。
如图1所示,一种基于脚本的Web服务执行优化方法,包括以下步骤:
a.采用Cpi演算对Web服务的描述脚本进行简约归一化;
b.通过分析Web服务的BPEL脚本,提取约束规则集,给出服务可用和可达性分析方法,用于形式化验证Web服务组合偏序序列的正确性,从而保障Web服务组合的正确。
c.分析Web服务的执行序列中各服务的约束条件和依赖关系,通过对Web服务的归一化脚本的相关性分析,给出Web服务执行序列的并行判据,通过对Web服务序列进行重排序,优化Web服务执行序列,并给出基于脚本DAG图的并行调度算法;
d.基于QoS服务特征属性,通过鲁棒控制模型对性能进行评估方法和优化,建立大规模计算环境下,Web服务并发计算模型。
Web服务的执行优化研究主要是针对Web服务的脚本,提取Web服务执行脚本中潜在的并行性。相对于传统的并行研究工作而言,不仅要考虑服务脚本的解析和资源的优化配置,基于Web服务自身的特点,还需要去发掘、提炼、运用新的相关性分析和并行编译技术。面向脚本的Web服务计算执行优化的技术反感分为四个阶段。
首先由于Web服务的异构特征是客观存在的,具有异构、分布、动态、演化等特性,同时基于XML的服务脚本无法进行推理研究,因此使用Cpi演算对Web服务的描述脚本进行简约归一化。简约归一化的脚本是本技术方案的研究对象和基础。
其次,保证Web服务组合的正确,是Web服务正确执行的前提和关键。由于Web服务是参与该服务的其他服务通过服务组合产生的逻辑整体,是按照一系列前后置约束条件编排的偏序执行序列。因此通过分析Web服务的BPEL脚本,提取约束规则集,给出服务可用和可达性分析方法,用于形式化验证Web服务组合偏序序列的正确性,从而保障Web服务组合的正确。
在保证Web服务正确执行的前体下,深入研究Web服务的执行序列中各服务的约束条件和依赖关系,通过对Web服务的归一化脚本的相关性分析,给出Web服务执行序列的并行判据,通过对Web服务序列进行重排序,优化Web服务执行序列,并给出基于脚本DAG图的并行调度算法。
由于参与Web服务的其它服务具有自演化和不确定特征,Web服务的执行优化分析需要考虑服务的可用性、可访问型、可靠性等QoS特征,本技术方案基于QoS服务特征属性,给出鲁棒控制模型,提出了基于鲁棒矩阵的性能评估方法和Web服务执行的优化方法,建立大规模计算环境下,Web服务并发计算模型,从有效、可靠、健壮等方面来模拟、分析和验证该模型的理论和方法。
实施例
如图1所示,图中最顶层是Web服务的描述脚本,第二层是对脚本的简约归一化,第三层是保证Web服务的正确执行,最底层是实现Web服务执行的执行优化。
在对Web服务执行优化的过程中,(1)首先需要对一个Web服务的脚本进行分析,对BPEL脚本进行简约归一化;(2)通过分析归一化脚本,提取约束规则集;(3)根据约束规则集验证Web服务组合的正确性;(4)分析归一化脚本的相关性,根据并行判据,提取执行脚本的并行性,并通过服务DAG实现调度执行;(5)进一步发现满足Qos服务质量要求的Web服务组合。
Claims (1)
1.一种基于脚本的Web服务执行优化方法,其特征在于,包括以下步骤:
a.采用Cpi演算对Web服务的描述脚本进行简约归一化;
b.通过分析Web服务的BPEL脚本,提取约束规则集,给出服务可用和可达性分析方法,用于形式化验证Web服务组合偏序序列的正确性,从而保障Web服务组合的正确;
c.分析Web服务的执行序列中各服务的约束条件和依赖关系,通过对Web服务的归一化脚本的相关性分析,给出Web服务执行序列的并行判据,通过对Web服务序列进行重排序,优化Web服务执行序列,并给出基于脚本DAG图的并行调度算法;
d.基于QoS服务特征属性,通过鲁棒控制模型对性能进行评估方法和优化,建立大规模计算环境下,Web服务并发计算模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102015320A CN102103519A (zh) | 2009-12-21 | 2009-12-21 | 一种基于脚本的Web服务执行优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102015320A CN102103519A (zh) | 2009-12-21 | 2009-12-21 | 一种基于脚本的Web服务执行优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102103519A true CN102103519A (zh) | 2011-06-22 |
Family
ID=44156309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102015320A Pending CN102103519A (zh) | 2009-12-21 | 2009-12-21 | 一种基于脚本的Web服务执行优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102103519A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222108A (zh) * | 2011-06-28 | 2011-10-19 | 用友软件股份有限公司 | 脚本处理方法和脚本处理装置 |
CN102646053A (zh) * | 2012-02-20 | 2012-08-22 | 西安电子科技大学 | 基于算术表达式的msvl柱面计算方法和系统 |
CN103942099A (zh) * | 2014-04-30 | 2014-07-23 | 广州唯品会网络技术有限公司 | 基于Hive的并行执行任务方法及装置 |
CN103973483A (zh) * | 2014-04-28 | 2014-08-06 | 南京邮电大学 | 基于网论的网络服务组合的分析方法 |
CN104106098A (zh) * | 2012-08-03 | 2014-10-15 | 梦工厂动画公司 | 有向无环图中的约束评估 |
CN104850638A (zh) * | 2015-05-25 | 2015-08-19 | 广州精点计算机科技有限公司 | Etl过程并行决策方法及装置 |
CN105159686A (zh) * | 2015-09-28 | 2015-12-16 | 北京奇虎科技有限公司 | 一种网站页面开发方法和装置 |
CN106469222A (zh) * | 2016-09-23 | 2017-03-01 | 东软集团股份有限公司 | 组合模型的执行方法和装置 |
-
2009
- 2009-12-21 CN CN2009102015320A patent/CN102103519A/zh active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222108A (zh) * | 2011-06-28 | 2011-10-19 | 用友软件股份有限公司 | 脚本处理方法和脚本处理装置 |
CN102646053A (zh) * | 2012-02-20 | 2012-08-22 | 西安电子科技大学 | 基于算术表达式的msvl柱面计算方法和系统 |
US9892529B2 (en) | 2012-08-03 | 2018-02-13 | Dreamworks Animation L.L.C. | Constraint evaluation in directed acyclic graphs |
CN104106098B (zh) * | 2012-08-03 | 2019-05-03 | 梦工厂动画公司 | 有向无环图中的约束评估 |
CN104106098A (zh) * | 2012-08-03 | 2014-10-15 | 梦工厂动画公司 | 有向无环图中的约束评估 |
CN103973483A (zh) * | 2014-04-28 | 2014-08-06 | 南京邮电大学 | 基于网论的网络服务组合的分析方法 |
CN103942099B (zh) * | 2014-04-30 | 2017-11-28 | 广州唯品会网络技术有限公司 | 基于Hive的并行执行任务方法及装置 |
CN103942099A (zh) * | 2014-04-30 | 2014-07-23 | 广州唯品会网络技术有限公司 | 基于Hive的并行执行任务方法及装置 |
CN104850638A (zh) * | 2015-05-25 | 2015-08-19 | 广州精点计算机科技有限公司 | Etl过程并行决策方法及装置 |
CN104850638B (zh) * | 2015-05-25 | 2018-10-19 | 广东精点数据科技股份有限公司 | Etl过程并行决策方法及装置 |
CN105159686A (zh) * | 2015-09-28 | 2015-12-16 | 北京奇虎科技有限公司 | 一种网站页面开发方法和装置 |
CN105159686B (zh) * | 2015-09-28 | 2018-09-04 | 北京奇虎科技有限公司 | 一种网站页面开发方法和装置 |
CN106469222A (zh) * | 2016-09-23 | 2017-03-01 | 东软集团股份有限公司 | 组合模型的执行方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102103519A (zh) | 一种基于脚本的Web服务执行优化方法 | |
Zaha et al. | Let’s dance: A language for service behavior modeling | |
Grassi et al. | Filling the gap between design and performance/reliability models of component-based systems: A model-driven approach | |
Ouyang et al. | Formal semantics and analysis of control flow in WS-BPEL | |
Barker et al. | Choreographing web services | |
Grassi et al. | From design to analysis models: a kernel language for performance and reliability analysis of component-based systems | |
CN102594833B (zh) | 一种通信协议适配方法和系统 | |
CN108885632A (zh) | 用于实时数据流编程的高效状态机 | |
Mandell et al. | A bottom-up approach to automating web service discovery, customization, and semantic translation | |
Marzolla et al. | Performance prediction of web service workflows | |
Cui et al. | Scenario analysis of web service composition based on multi-criteria mathematical goal programming | |
Arcelli et al. | Performance-driven software model refactoring | |
Mirandola et al. | A reliability model for service component architectures | |
Bertolino et al. | Towards component-based software performance engineering | |
Wang et al. | A survey of change management in service-based environments | |
Brabra et al. | Model-driven orchestration for cloud resources | |
Baresi et al. | Towards self-healing composition of services | |
Benoit et al. | Evaluating the performance of skeleton-based high level parallel programs | |
Bocciarelli et al. | Automated performance analysis of business processes | |
Kapova et al. | Application of advanced model-driven techniques in performance engineering | |
Bonfietti et al. | Maximum-throughput mapping of SDFGs on multi-core SoC platforms | |
Zhou et al. | A survey on semantic web services and a case study | |
Hendriks et al. | A systematic approach for interfacing component-based software with an active automata learning tool | |
Grassi et al. | A model transformation approach for the early performance and reliability analysis of component-based systems | |
Sabetta et al. | Abstraction-raising transformation for generating analysis models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110622 |