当前位置: 首页 > 专利查询>天津大学专利>正文

基于语义的Web服务自动调用及QoS信息监测方法技术

技术编号:10886181 阅读:77 留言:0更新日期:2015-01-08 15:29
本发明专利技术涉及Web服务技术领域,为实现对Web服务的可用性、响应时间等QoS信息的监测,极大地解决人工输入参数的负担,节省时间和开销,并保证QoS的准确性和时效性。为此,本发明专利技术采取的技术方案是,基于语义的Web服务自动调用及QoS信息监测方法(1)解析Web服务的WSDL文件;(2)建立基于DBpedia关联数据的Web服务标注模型;(3)判断标注结果是否为本体概念;(4)将标注的本体概念作为宾语;(5)利用JavaScript发送封装有SPARQL查询语句的请求给DBpedia SPARQL协议终端http://dbpedia.org/sparql;本发明专利技术主要应用于Web服务。

【技术实现步骤摘要】
基于语义的Web服务自动调用及QoS信息监测方法
本专利技术涉及Web服务
,具体来说,涉及一种基于语义的Web服务自动调用方法,以及自动的服务QoS监测方法。技术背景Web服务是实现面向服务计算的主要技术,是面向服务的架构(SOA)的最佳实现。服务接口描述,如Web服务描述语言(WSDL)定义的机器可读格式的接口,从数据和功能两个方面定义软件所支持的操作,描述了服务运行环境、输入/输出参数等信息。目前SOA软件测试得到了研究者和开发者的广泛关注,基于服务的软件系统测试必要考虑三个因素:自动化、动态协同能力、服务自主计算。服务重构需要持续在互联网上验证与确认以保证Web服务在功能和性能上满足实际生活应用的需求。此外,服务质量(QualityofService,QoS)从不同角度对服务的质量进行了评估,如响应时间、可用性、安全性、可靠性、服务价格、吞吐量、准确性、可扩展性、并发处理能力等。QoS信息在Web服务的发现、组合、交互过程中起着重要作用,是Web服务满足服务请求者需求能力的一种度量。目前QoS数据的获取主要依赖服务提供商的发布和用户的反馈信息,这两种方式都是主观获取方式。此外,随着服务数量的增长,对于批量的服务,手工配置参数的方式不仅耗费时间,还极易出现错误。Web服务发布之后可能会被更改和演化,服务的QoS信息也需要被更新,从而保持信息的时效性。通过自动地服务调用运行服务来采集QoS数据,可以避免服务提供商提供的虚假信息和客户的主观评价差异,使得QoS数据具有更好的准确性与及时性。因此,实现Web服务调用自动化,能够使得服务测试与QoS监测自动化,极大地解决人工输入参数的负担,节省时间和开销。实现服务的自动化调用最重要内容是参数数据的自动化生成。然而,自动化参数数据生成有一定的困难。在SOA中,服务松散地耦合,这意味着它们独立于彼此而开发,从而不具有一致的共同接口。因此,如何保证Web服务请求者能够提供Web服务提供者需要的输入信息,成为了亟待解决的问题。目前,语义Web服务的提出为了实现机器可理解的Web服务,旨在实现自动化的Web服务发现及组合等过程。但是,语义Web服务发现方法中没有专门对QoS的描述,QoS监测仍然需要人工参与,因此仍然无法支持批量地、自动地服务调用以及QoS信息获取。针对以上问题,有必要提出一种Web服务自动调用及QoS信息监测方法,方便于批量的服务QoS信息实时监测。
技术实现思路
为克服现有技术的不足,利用基于服务接口的描述文档和语义网技术,自动生成Web服务的调用数据并与Web服务交互,实现对Web服务的可用性、响应时间等QoS信息的监测,极大地解决人工输入参数的负担,节省时间和开销,并保证QoS的准确性和时效性。为此,本专利技术采取的技术方案是,基于语义的Web服务自动调用及QoS信息监测方法(1)解析Web服务的WSDL文件,获取服务名称、服务接口名称、服务接口描述、服务参数名称、服务参数类型;(2)利用DBpedia本体标注服务参数,包括建立基于DBpedia关联数据的Web服务标注模型,对Web服务参数层进行参数精化和清洗,利用DBpediaSpotlight应用将Web服务的每个清洗后的参数关联到一个合适的DBpedia实例数据或本体概念上;(3)判断标注结果是否为本体概念,如果是,则执行步骤(4);如果否,则执行步骤(10);(4)将标注的本体概念作为宾语,谓语为资源描述框架(RDF)的rdf:type属性,按照简单协议和资源描述框架查询语言(SimpleProtocolandRDFQueryLanguage,SPARQL)的语法规则,生成SPARQL语句;(5)利用JavaScript发送封装有SPARQL查询语句的请求给DBpediaSPARQL协议终端http://dbpedia.org/sparql;(6)获取对象符号JSON(JavaScriptObjectNotation,JavaScript)格式的服务返回结果,对其进行解封装;(7)判断返回结果是否包含实例,如果是,则执行步骤(8);如果否,则执行步骤(11);(8)获取返回结果的实例列表,即为该本体概念下的实例值的列表;(9)顺序读取实例列表中的一个实例值;(10)判断该实例值是否包含除大小写字母和下划线以外的字符,如果是,则执行步骤(9);如果否,则执行步骤(12);(11)基于约束限制模型生成服务参数的测试数据;(12)根据测试数据,自动生成参数的可扩展标记语言(XML)文件;(13)利用XML文件调用Web服务,获取QoS信息;(14)记录得到的该服务的QoS信息;(15)设定定时自动更新QoS信息的时间周期,到期后触发QoS自动监测工作,即执行步骤(1)。本专利技术的步骤(11)具体过程如下:11.1读取服务的参数信息;11.2判断该参数是否为简单数据类型,如果是,则执行步骤11.5,;如果否,则执行步骤11.3;11.3分解复杂类型的参数;11.4判断复杂参数分解后的参数是否为简单类型,如果是,则执行步骤11.5;如果否,则执行步骤11.3继续分解复杂类型参数;11.5获取该参数信息及约束条件;11.6判断该参数是否为XML架构的pattern元素,如果是,则执行步骤11.7,;如果否,则执行步骤11.8;11.7调用REX(XML远程事件,RemoteEventsforXML)生成参数的测试值,执行步骤11.10;11.8设置参数的范围、大小、长度约束限制;11.9随机生成参数测试值;11.10记录基于约束限制模型生成服务参数的测试数据。本专利技术的步骤(13)具体过程如下:13.1新建Axis2服务客户端;13.2解析测试参数的XML文件;13.3将测试参数值封装成Axis2中的OMElement对象;13.4根据服务的接口调用Web服务;13.5判断服务调用是否成功,如果是,则执行步骤13.6;如果否,则执行步骤13.10;13.6根据发送请求到接受响应信息的间隔时间,计算服务的响应时间;13.7在给定的一段时间内,根据服务总的调用次数,计算服务的吞吐率;13.8在给定的一段时间内,根据服务被成功交付的次数,计算服务的可靠性;13.9记录服务的QoS监测日志,包括记录服务调用的时间、调用的次数等,执行步骤13.12;13.10利用AxisFault获取异常信息,其异常情况包括连接异常(ConnectException)、输入输出异常(I/OException)、未知主机异常(UnknownHostException)、超文本传送协议301错误(HTTP301Error)、超文本传送协议302错误(HTTP302Error)、简单对象访问协议异常(SoapException);13.11将异常情况的分析结果记录到服务的调用异常日志中;13.12根据调用及异常分析结果,获取服务的可访问性。与已有技术相比,本专利技术的技术特点与效果:本专利技术通过自动调用Web服务,实现对Web服务的可用性、响应时间等QoS信息的监测,极大地解决人工输入参数的负担,节省时间和开销,并保证QoS的准确性和时效性;同时,本专利技术还有利于提高服务质量,提高服务消费者的可知性。附图说明图1为本专利技术提供本文档来自技高网
...
基于语义的Web服务自动调用及QoS信息监测方法

【技术保护点】
一种基于语义的Web服务自动调用及QoS信息监测方法,其特征是,包括下列步骤:(1)解析Web服务的WSDL文件,获取服务名称、服务接口名称、服务接口描述、服务参数名称、服务参数类型;(2)利用DBpedia本体标注服务参数,包括建立基于DBpedia关联数据的Web服务标注模型,对Web服务参数层进行参数精化和清洗,利用DBpedia Spotlight应用将Web服务的每个清洗后的参数关联到一个合适的DBpedia实例数据或本体概念上;(3)判断标注结果是否为本体概念,如果是,则执行步骤(4);如果否,则执行步骤(10);(4)将标注的本体概念作为宾语,谓语为rdf:type,按照简单协议和资源描述框架查询语言SPARQL语法规则,生成SPARQL语句;(5)利用JavaScript发送封装有SPARQL查询语句的请求给DBpedia SPARQL协议终端http://dbpedia.org/sparql;(6)获取JSON格式的服务返回结果,对其进行解封装;(7)判断返回结果是否包含实例,如果是,则执行步骤(8);如果否,则执行步骤(11);(8)获取返回结果的实例列表,即为该本体概念下的实例值的列表;(9)顺序读取实例列表中的一个实例值;(10)判断该实例值是否包含除大小写字母和下划线以外的字符,如果是,则执行步骤(9);如果否,则执行步骤(12);(11)基于约束限制模型生成服务参数的测试数据;(12)根据测试数据,自动生成参数的XML文件;(13)利用XML文件调用Web服务,获取QoS信息;(14)记录得到的该服务的QoS信息;(15)设定定时自动更新QoS信息的时间周期,到期后触发QoS自动监测工作,即执行步骤(1)。...

【技术特征摘要】
1.一种基于语义的Web服务自动调用及QoS信息监测方法,其特征是,包括下列步骤:(1)解析Web服务的WSDL文件,获取服务名称、服务接口名称、服务接口描述、服务参数名称、服务参数类型;(2)利用DBpedia本体标注服务参数,包括建立基于DBpedia关联数据的Web服务标注模型,对Web服务参数层进行参数精化,利用DBpediaSpotlight应用将Web服务的每个精化后的参数关联到一个合适的DBpedia实例数据或本体概念上;(3)判断标注结果是否为本体概念,如果是,则执行步骤(4);如果否,则执行步骤(10);(4)将标注的本体概念作为宾语,谓语为rdf:type,按照简单协议和资源描述框架查询语言SPARQL语法规则,生成SPARQL语句;(5)利用JavaScript发送封装有SPARQL查询语句的请求给DBpediaSPARQL协议终端http://dbpedia.org/sparql;(6)获取JSON格式的服务返回结果,对其进行解封装;(7)判断返回结果是否包含实例,如果是,则执行步骤(8);如果否,则执行步骤(11);(8)获取返回结果的实例列表,即为该本体概念下的实例值的列表;(9)顺序读取实例列表中的一个实例值;(10)判断该实例值是否包含除大小写字母和下划线以外的字符,如果是,则执行步骤(9);如果否,则执行步骤(12);(11)基于约束限制模型生成服务参数的测试数据;(12)根据测试数据,自动生成参数的XML文件;(13)利用XML文件调用Web服务,获取QoS信息;(14)记录得到的该服务的QoS信息;(15)设定定时自动更新QoS信息的时间周期,到期后触发QoS自动监测工作,执行步骤(1)。2.如权利要求1所述的基于语义的Web服务自动调用及QoS信息监测方法,其特征是,步骤(11)具体过程如下:11.1读取服务的参数信息...

【专利技术属性】
技术研发人员:冯志勇张祯陈世展
申请(专利权)人:天津大学
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1