第41卷第10期浙江大学学报(工学版)
VoI_41NolO2007年10月
JournalofZh自iangUniversity(EngineeringScience
0ct.2007
自适应Web服务管理框架设计与实现
韩
冬,王颖,朱
岩
(北京航空航天大学计算机学院,北京100083)
摘要:为了更好地管理Web服务和服务组合的运行状态.提出了一种自适应Web服务管理框架XManager.
XManager框架基于自主计算思想,以RuleML语言为规则表达的定义方式形成规则库,并具有服务组件架构(ScA)模型支持的数据解析和业务执行服务组件.信息感知器采用外观模式.采取推模式和拉模式结合的信息感
知方式,为框架提供运行环境数据.白适应管理引擎通过对RuleML规则的加载解析,动态调度SCA组件对面向服
务运行环境进行业务操作并完成自主管理过程,降低了人工干预的频率.实验结果表明,XManager框架与Web服务运行环境有效结合,为服务平台提供了自适应管理机制,提高了平台的可管理性和服务质量.
关键词:web服务;自主计算;规则标记语言;服务组件架构
中国分类号:TP393
文献标识码:A
文章编号:1008—973x(2007)10—1669—05
Designandimplementationofadaptive
Web
services
managementframework
HAN
Dong,WANGYing。ZHUYan
(School
ofComputerScienceandEngineering,BeihangUniversity,Beijing100083,China)
Abstract:Anadaptive
Web
services
managementframework—XManagerwasproposed
to
manage
Web
servicesandserviceseomposilionina
betterway.Based
ontheideaofautonomiccomputing,XManagertakesRuleM【L
as
thedefinitionmodeforruleexpression
to
form
a
rulebaseandincludes
a
servicecompo—
nent
architecture(SCA)modeltosupportdataanalyzingandbusinessexecution.Theinformation
sensor
adoptsfacadepatternandtakespushandpullpatternto
provideruntimedatafortheframework.The
a—
daptivemanagementengine10adsandanalyzesRuleMLand
dynamicallyinvokes
SCAmodelto
operate
Web
servicesruntimeenvironment,implementautonomicmanagementand
reducehumanoperation.Ex—
perimentalresultsshowthatXManagerframeworkcan
effectivelyintegratewith
Web
servicesruntime
en—
vironment,supportadaptivemanagementmechanismandenhancetheservicemanageabilityandquality.
Key
words:Web
services;autonomiccomputing;RuleML}servicecomponentarchitecture(SCA)
Web服务是一种基于标准的跨互联网和企业性等Web管理服务方面的问题口].传统的管理Web的技术,它建立在已有的Web协议和XML标准之这种紧密依赖于人工活动,在日益复杂的计算环境上,提供了一个应用之间交互的体系架构“].通过对中,面对逐渐增长的管理成本,无法有效地支持对已经存在的企业资源使用Web服务,企业可以为广web服务运行环境的管理.在此基础上演变出来的泛的客户扩展提供各种服务”].随着Web服务逐渐管理方案通常是采用独立运行的监控服务器,替代被产业界所接受,Web服务从基础层面改变了对于人工管理的方式对Web服务和服务组合运行环境管理技术的传统认识,但是同时存在着安全性、可靠
进行监控和管理.这种管理模式虽然具有自动管理
收藕日期:2007—07—25.
淅讧大学学报(工学版)罔址:www.journals.zju.edu.en/eng
基盒项目:国家“863”高技术研究发展计划资助项目(2006AA01219A).
作者简介:韩冬(1982--),男,北京人,硕士生.从事Web服务安全和管理的研究.E-mai[#uswinter@sina|coRl
通讯联系人;马赋富,男t教授・博导.Email,dfmaQnlsde
buaa.edu.cn
1670
浙江太学学报(.Y-学版)
第4l喜
的基本机制,但是没有形成标准的管理规则,而且管理功能固定地集成到管理工具中,缺少灵活、可扩展的特性.本文在传统Web服务管理基础上提出了一个面向Web服务体系结构的自适应框架XManag—er,通过基于规则的自主管理机制,形成了对Web服务的管理框架,提高了Web服务的可管理性和服
务质量.
2.1
2
XManager框架设计与实现
XManager框架整体结构
XServices工作流引擎主要用于解决在互联网
的松耦合和异构计算环境下,组合Web服务的执行.它的主要功能是接收用户的SOAP请求,根据请求,解释执行BPEL文件,并将最终处理结果返回给用户.它基于SOAPl.2和BPELl.1规范,支持同步和异步调用Web服务以及事务机制,并提供引擎管理接口对流程实例进行管理,如挂起、终止等生
1相关概念
1.1自主计算
自主计算是IBM公司高级副总裁Paul
Horn
命周期操作.XManager框架在XServices工作流引擎基础上进行扩展,形成了具有自适应机制的管理框架,它主要由信息感知器、自适应管理引擎、规则空间与规则库、SCA模型库和操作执行器等组成,如图1所示.
信息感知器对XServices运行环境的状态、性空问负责管理、解析这些规则;SCA模型库是SCA组件的集合,包括对信息感知器的状态进行分析和对操作执行器进行反馈操作的SCA组件;操作执行器是XManager和运行环境的连接点,由它来自适应地配置、优化和控制容器;自适应管理引擎是XManager的核心部分,它获取信息感知器的数据,通过规则空问调度ScA模型库,获得解析结果并反向控制操作执行器.
2.2
提出的新概念“].IBM将自主计算定义为“能够保证电子商务基础结构服务水平的自我管理(SelfManaging)技术”.与传统的计算模式不同,自主计算可以通过与规则和逻辑的结合,降低软件运行过程中人工干预的频率和复杂度,提高软件运行的自治性,增强系统的可靠性和安全性.人工管理员可以通过软件的自主管理,避免对系统的过多干预,提高系统的自适应能力.
自主计算的核心内容是自我监控、自我配置、自我优化和自我恢复”].自主计算是一个完整的过程,包括监视(Monitor)、分析(Analyze)、计划(Plan)、执行(Execute)四部分.自主计算对于增加的系统复杂性和维护成本来说是一个解决方案,它的最终目标是创造可以管理自身同时降低对于终端用户复杂性的计算机系统.因此,通过隐藏和移除人工控制的复杂性,人工任务可以专注于获得高水平
的面向业务的目标”].
XManager框架特点分析
在传统Web服务管理模式的基础上,提出了一
从技术的角度,自主计算可以被认为是具有监控、推理和控制功能的中间件,对于一个特定的中间件,它运行时观察和改变的状态由自身决定,而分析和决策则还依赖于管理员部署的工程”].
1.2
种自适应的Web服务管理框架XManager,它不仅具有常见的容器管理机制中信息感知和操作执行的
SCA模型
服务组件架构(ServiceComponentArchitec—
范.它的目的在于组合已有的服务组件,并兼容各种异构服务资源,从而将业务实现模块封装为服务组现商业运算的快速整合.在SCA子系统中,相关模块组件通过模块属性、外部服务和接入点配置,集成在一组中.ScA提供了通用的调用特性,并且可以在不引起任何变化的基础上,配置已有的SCA组件.这些SCA组件可以通过SCA装配模型集成到新的系统中口].
Fig.1
围1
XManager总体架构
MainarchitectureofXManager
第lo期
韩冬,等:自适应Web服务管理框架设计与实现
功能,而且包含自适应的管理引擎.XManager以RuleML语言为规则表达的定义方式,形成了规则行服务组件.自适应管理引擎通过对RuleML规则的加载船析,动态调度SCA组件对XServices运行环境进行管理.本文通过RuleML动态执行实现了对RuleMI。的合理解析以及对SCA组件的准确调用,提高了XManager框架的灵活性和扩展性.
2.3信息感知器
信息感知器是框架中最基本的模块,整个框架通表示出来.它采用外观模式(facadepattern)“”对感知器进行设计,降低了子系统的复杂度和依赖程度.
2.3.1
信息感知器的功能结构
田2信息感知器结构
Fig.2
Structureofinfo-sensor
感知信息更新频率的不同,将信息提供者提供的感知数据划分为静态数据和动态数据.静态数据变化周期较长,一般情况下不会频繁发生改变,如容器名称、容器版本号、lP地址、操作系统信息,工作目录等.动态数据随着容器的运行而不断发生变化.需要即时更新,如Java虚拟机内存值、CPU负载、空闲磁盘、BPEL流程实例的运行状态等.由于信息提供者负责获取上述2种类型的信息,存在着感知时间的矛盾,如果感知周期过长,无法适应动态数据的不断变化并真实地获取和展示容器的运行状况;如果感知周期过短,虽然可以有效地感知不断变化的动态信息,但是对于变化较少的静态信息不断感知的过程浪费了系统资源,降低了计算能力的有效利用率.因此,XMan—对应的信息感知器,信息感知器再将处理过的数据推向后续模块:在拉模式下,容器运行环境被动地提供数据,与其对应的信息感知器创建一个感知线程主动地向容器提取数据.
在XManager
2.4
SCA模型库
随着SCA组件不断增加,如果对每个SCA组
采用集中的SCA组件管理中心(scAcenter)进行的一个SCA对象,每个对象以ServiceSet的形式由管理中心进行统一管理.组件管理中心提供对SCA组件的定位、查找、增加、删除和更新等功能,提供了SCA组件和管理的有效集成方法.
SCA管理器是调用SCA对象的程序模块,它根据自适应管理引擎的消息对SCA对象进行定位在调用scA组件时,通过ScA组件管理中心进行查询,通过组件名获得SCA的运行实例,并调用该实例进行操作.SCA组件管理中心提供了一套使用命名和目录的接口,它包括命名服务和目录服务z部分,其中目录服务包含SCA对象并提供了对sCA对象的操作.
2.5
RuleML规则库
框架中,信息感知器是自适应管理的首要环节,也足自适应管理框架的重要体现之一,如图2所示.
器启动时以ServiceSet的形式将规则读取到信息感务调度器对任务进行调度,定时获取规则对应的感知信息.信息提供者通过外观模式的管理接口,将运行环境的运行信息提交给信息感知器,完成对系统当前状态的观察.信息感知器将系统的运行数据记录下来,作为运行分析的依据.
RuleML是在2000年8月第六届泛太平洋人的目的是建立一个开放的、与开发者无关的基于XML或者RDF的规则语言【1“.RuleML把一个规则划分成为若干个原子(atom)部分规则系统,以<head)标签表示事实的结论(即Then部分),用<body)表示前提(即If部分).RuleML不但可以表示各种流行的规则系统,还可以用(var)、<ind)等表示不同的单个常量或逻辑变量以及结构,用(red表
浙江大学学报(工学版)
弟4l卷
图3
scA模型加载调用模式
Fig.3
SCAmodelloadingandinvoking
pattern
示谓词或关系符号.在XManager框架中,为了将RuleML的谓词操作表现为可扩展的形态,并将RuleML的逻辑表达式和实现业务功能的Java代码联系起来,将RuleML和SCA组件进行绑定,在RuIeML的(red中指向了对应的SCA组件的实现方法,在调用过程中,以这种方法来进行实际的操作.
2.6自适应管理引擎
自适应管理引擎是XManager框架的核心部分,它通过全局管理器进行任务调度,如图4所示.自适应管理引擎接收信息感知器发送的容器信息,通过对RuleML规则的解析,调用相应的SCA组件获得解析结果,并根据规则调用执行管理功能的SCA组件进行自适应管理.全局管理器是自适应管理引擎的调度模块,它采用单例模式,在系统全局中保存一个对象作为全局管理的功能模块.全局管理解析结果后,调用sCA执行器进行执行.
…皇纂j旁域垂釜爝
:::::I::::.
、要罂堑拭
圈4自适应管理引擎结构
Fig.4
Structureofadaptivemanagementengine
规则分析器对部署在框架内的规则进行加载和解析.主要包括2部分:对操作的解析和对参数的解RuleML中提取出变量和常量的字段名称和值.当SCA管理器对RuleML规则进行解析后,全局管理器根据解析结果,调用相应的SCA组件进行实际操作.当嗣用SCA组件时,采用Java的反射机制进行调用.Java的反射机制能够创建灵活的代码,这些
代码可以在运行时装配,无须在组件之间进行源代码链接.在XManager框架中,使用Java的反射机制调用SCA组件中的Java实现类,完成肘RuleML规则中相应部分的业务执行.
3框架应用实例和实验分析
将在普通模式和自适应模式下工作流引擎处理流程实例的时间进行对比.在普通模式下,工作流引擎内部部署了BPEL流程模板,定义了流程和相关服务的逻辑、调用关系.当引擎接收到客户端的SOAP消息后,建立流程实例解析BPEL,并调用外部服务,获得最终结果.基于XManager框架的自适应模式根据不同的外部服务响应时间差别较大的特点,在引擎内维护一组等价服务序列,并监控引擎调用服务的平均响应时间等因素,当平均响应时间超过规则的预设值时,自适应地将BPEL流程的伙伴(partner)更改为平均响应时间较短的服务,在无须人工干预的情况下优化了流程的运行效率.
实验的运行环境是Pentlum4
3.0
GHz、l
G
Ram、WindowsXPProfessional、JKD5.0.为了对
工作流引擎的调用服务方式进行自适应管理,在引擎内部署了基于RuleML的规则.基于XManager框架的处理模式设置轮询线程,线程调用信息感知器,通过感知器中具有监控时间功能的信息提供者
对服务返回时间进行监控,并通过自适应管理引擎对信息感知器感知的数据进行集成和分析.调用分析时间的SCA组件,根据RuleML规则进行解析.当响应时间超过规则中的阈值时,自适应管理引擎通过修改BPEL的SCA组件将BPEL的伙伴替换
为等价的其他服务.
通过图5可以看出,当使用自适应模式时,由于根据服务响应时间动态地管理BPEL流程实例的伙
伴服务,可以选择响应时间较短的服务,提高整个流程实例的运行效率.图中,n为调用流程次数.
第10期
韩冬,等:自适应Web服务管理框架设计与实现
353025。20、151050
图5普通和自适应模式BPEL流程处理时间对比
Fig.i
CompaIison
ofBPEL
process
timeofc。mmon
andadaptivepattern
4结语
Web服务为构建通用互操作的分布式系统提供了一个松耦合的体系架构“∞.随着Web服务技术的发展,面向服务的自治式软件体系结构逐渐成为因特网环境下主要的软件开发、部署、运行和管理方式.传统的Web服务管理方式重点在监控和展示,缺乏相应的分析和自适应的管理手段.本文提出了一种面向服务的自适应管理框架XManager,通过基于RuleML规则的解析调度和SCA模型的分析执行,研究并实现了XServices平台的管理框架,完成了对web服务的自适应管理,提高了Web服务的可管理性和服务质量.在今后的工作中,将重点研究xManager框架在模糊匹配方面的机制,提高框架规则匹配的效率}同时完善XManager框架与XServices平台的集成效果,提高框架的自治性、动态性和扩展性.
参考文献(References):
[13
SIBLINI
R,MANSOUR
N.Testing
Webservices
[c]∥m
3rdACS/IEEEInternationalConferellce
oR
ComputerSystemsandApplications.Washington:IEEE,
2005:135.
[2]LIUFeng.WANG
Ge-san,LILi.et
a1.Webservicefor
distributedcommunicationsystems[c]∥IEEE
Interna-
tionalConference
on
ServiceOperations
and
Logistics,
and
Informatics.Washington:IEEE。2006;1030—1035,
[3]ANLian-jun,JENGJun-jang.Web
servicemanagement
usingsystem
dynamics[c]∥Proceedingsof
the[EEEIn-
ternationalConferenceon
WebServices.Washington:
IEEE,2005:347—354.
[43
GANEKAG。CORBITAThedawningoftheautonomic
eomputiogera[EB/OL].[2003一ol一233.http://wⅥw.r}
seⅡc}L
ibm.eom/iournaUi/421/ganek.htm[.
[33
KEPHART
JO,CHESSDM.Thevisionofautonomic
computing[盯.IEEEComputer,2003,36(1):41—50.[6]LINP,MACARTHUR
A,LEANEY
J.Defining
auto—
nomiccomputing:a
softwareengineeringperspective
[c]∥Proceedings
ofthe2005AustralianSoftware
Engi—
neeringConference.Washington:IEEE,2005:88—97.
[7]HUANG
Gang,L1U
Tian-cheng,MEIHong,eta1.To
wardsautonomic
computingmiddleware
via
reflection
[c]∥Proceedings
ofthe28thAnnu山InternationalCom-
purer
Software
andApplicationsConference.Washington:
IEEEt2004:135—140.[83
ZOUZhi-le,DUAN
Zhen-hu&Building
business
processes
or
assembling
service
components:reuse
serviceswith
BPEL4WSandSCA[c]∥Proceedingsof
theEuropeanConferenceon
WebServices.Washington:
1EEE。2006:138—147.
[9]BOLEYH,GROSOFB,TABET
S.RuleMLtutorial
[EB/OL].[2005一05].http://wwJ.・ruleml.org/papers/
tutorial—ruleml一2005—0513.html.
Do]VINOSKI
S.Chainof
responsibility[J].IEEE
Com-
purer,2002,6(6):80—83.
[11]PASCHKE九RBSLA
a
declarativerule-basedservice
levelaggreementlanguagebasedon
RuleML[c]∥Pro-
ceedingsofthe2005InternationalConference
on
Compu-
rationalIntelligencefor
Modeling,ControlandAutoma-
tJon,andlnWxnational
Conference
on
Intellig-ent
A—
gents,WebTechnologiesandInternet
Commerce.Wash-
ington:IEEE,2005:308—314.
D23
TANGKe-zhe,CHENShi-ping,LEVYD.eta1.Aper—formance
evaluationof
Webservices
security[c]∥
proct%-。tlingsofthe10th
IEEE
InternationalEnterprise
Distributed
ObjectComputingConference.Hongkong:
lEEE,2006:61—74.
自适应Web服务管理框架设计与实现
作者:作者单位:刊名:英文刊名:年,卷(期):被引用次数:
韩冬, 王颖, 朱岩, HAN Dong, WANG Ying, ZHU Yan北京航空航天大学,计算机学院,北京,100083
浙江大学学报(工学版)
JOURNAL OF ZHEJIANG UNIVERSITY(ENGINEERING SCIENCE)2007,41(10)3次
参考文献(12条)
1. SIBLINI R;MANSOUR N Testing Web services 2005
2. LIU Feng;WANG Ge-san;LI Li Web service for distributed communication systems[外文会议] 20063. AN Lian-jun;JENG Jun-jang Web service management using system dynamics[外文会议] 20054. GANEK A G;CORBI T A The dawning of the autonomic computing era 20035. KEPHART J O;CHESS D M The vision of autonomic computing 2003(01)
6. LIN P;MACARTHUR A;LEANEY J Defining autonomic computing:a software engineering perspective 20057. HUANG Gang;LIU Tian-cheng;MEI Hong Towards autonomic computing middleware via reflection[外文会议]2004
8. ZOU Zhi-le;DUAN Zhen-hua Building business processes or assembling service components:reuseservices with BPEL4WS and SCA[外文会议] 20069. BOLEY H;GROSOF B;TABET S RuleML tutorial 200510. VINOSKI S Chain of responsibility 2002(06)
11. PASCHKE A RBSLA a declarative rule-based service level aggreement language based on RuleML[外文会议] 2005
12. TANG Ke-zhe;CHEN Shi-ping;LEVY D A performance evaluation of Web services security 2006
本文读者也读过(3条)
1. 徐少平. 徐少文. 黄美玲. XU Shao-ping. XU Shao-wen. HUANG Mei-ling 一个Web服务管理框架设计方案[期刊论文]-计算机技术与发展2006,16(4)
2. 陈彦萍. 李增智. CHEN Yan-ping. LI Zeng-zhi 语用Web服务管理框架[期刊论文]-解放军理工大学学报(自然科学版)2008,9(5)
3. 刘敏. 严隽薇. 王坚. LIU Min. YAN Jun-wei. WANG Jian 基于Web服务与资源模型的动态工作流互操作框架[期刊论文]-计算机集成制造系统2006,12(2)
引证文献(3条)
1. 刘秀霞. 李锋 基于Web Services的教学管理系统的设计与实现[期刊论文]-电脑与电信 2008(2)
2. 李伟平. 褚伟杰. 杨维强. 刘诗童 一种支持SOA系统开发的服务注册库[期刊论文]-小型微型计算机系统 2011(1)3. 李伟平. 褚伟杰. 杨维强. 刘诗童 一种支持SOA系统开发的服务注册库[期刊论文]-小型微型计算机系统 2011(1)
本文链接:http://d.wanfangdata.com.cn/Periodical_zjdxxb-gx200710014.aspx