基于云计算Web服务应用的研究_第1页
基于云计算Web服务应用的研究_第2页
基于云计算Web服务应用的研究_第3页
基于云计算Web服务应用的研究_第4页
基于云计算Web服务应用的研究_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北京交通大学基于云计算Web服务应用的研究 2016/1/24姓名学号:学院:班级: 任课教师:文章简述了云计算以及Web服务的概念、体系结构、实现原理以及特点等,研究了云环境下基于粒子群优化算法以及用户偏好的Web服务选择。基于云计算Web服务应用的研究()摘 要:云计算是一项正在兴起的技术, 是多项网络技术发展融合的产物。云计算先进的理念和技术,为Web应用提供了新的思路。快速有效地为用户查找满意的、符合需求的Web服务,是服务选择所必须要处理的问题之一,可以说有效的服务资源管理和选择算法已经变成Web服务进一步发展的基础和关键。本文首先简述了国内外云计算和Web服务的现状和发展趋势,并对

2、云计算和Web服务的概念、特点以及体系结构和实现原理等进行了阐述,在此理论基础上,研究了云计算与Web服务应用的关系,以及Web基于云环境下的应用,包括云环境下基于改进粒子群优化算法的Web服务选择,基于用户偏好的Web服务选择等,并提出了基于改进粒子群优化算法的Web服务选择,最后通过案例分析,对基于云计算下的Web服务系统体系结构进行了简述,云计算环境下Web服务能够得到更有效的选择。关键词:云计算;Web服务;Web;云仿真;云平台目录1 绪论31.1 研究背景及意义31.2 国内外研究现状及发展趋势41.2.1 云计算研究现状及发展趋势41.2.2 Web服务研究现状及发展趋势52 云

3、计算与Web服务简介62.1 云计算技术62.1.1 云计算的概念62.1.2 云计算体系结构72.1.3 云计算实现原理82.1.4 云计算的特点92.2 Web服务102.2.1 Web服务的概念102.2.2 Web服务的体系结构102.2.3 Web 服务的技术架构112.2.4 Web服务的核心技术122.3 云计算与Web服务的关系133 基于云计算的Web服务应用143.1 基于云仿真的Web服务选择143.1.1 问题的提出143.1.2 Cloud Sim云仿真模拟器153.2. 云环境下基于改进粒子群优化算法的Web服务选择173.2.1 标准粒子群优化算法(PSO)173

4、.2.2 算法实现描述183.3云环境下基于用户偏好的Web服务选择研究183.3.1 问题的提出183.3.2 Hadoop技术基础193.3.3 云环境下基于改进粒子群优化算法的Web服务选择194案例分析基于云计算的Web服务系统体系结构224.1 系统总体设计224.1.1 系统体系架构224.1.2 异构数据集成244.2 集成应用264.3 案例总结285结论28参考文献291 绪论1.1 研究背景及意义随着互联网的飞速发展,越来越多的人开始使用互联网,互联网上承载着不计其数的Web应用程序,跟传统的桌面应用一样,不同的Web应用实现了不同的功能,供不同的组织或个人使用。在背后支撑

5、着整个互联网的是一台台服务器,还有大量的网络设备以及连接它们的电缆等,这些基础设施协同工作,才使得整个世界互联互通。其中,服务器是最重要的设施,它包括Web应用运行所依赖的Web容器,存储服务器,数据库服务器等。Web服务器端的架构在随互联网同步发展,目前,对于大型的企业级应用,主流架构通常采用分布式Web集群,用多台物理机通过适当的配置作为一个整体来共同运行一个Web应用,以应对由高访问量带来的高负载。云计算是近几年兴起的理念和技术。云计算的基本理念是通过集中整合各种IT资源,以统一的形式对用户提供服务,这种服务的最大特点是按使用付费,使得IT资源像水和电一样供人使用。云计算的技术使得计算、

6、存储、带宽等资源由客户端向服务端转移,用户只用关心使用何种资源或服务,而不必关心这些资源和服务如何提供,用户所需要的只是一个能够访问互联网的终端,用以提交请求和获得结果,其他的都交由云端实现。云计算与虚拟化技术密切相关,虚拟化技术使得云端的资源整合更为敏捷和有效,也使得用户能够更为细粒度地使用IT资源。云计算先进的理念和技术,为Web应用提供了新的思路。快速有效地为用户查找满意的、符合需求的Web服务,是服务选择所必须要处理的问题之一,可以说有效的服务资源管理和选择算法已经变成Web服务进一步发展的基础和关键。对基于服务质量的Web服务选择的进一步研究,不管是在理论方面还是应用层次上都有重要的

7、指导意义,它也是Web服务研究方面的一个不可缺少的构成部分,该方面的研究同时还受到了科研领域的高度重视。另外,已有的研究对于处理传统Web服务集中式缺陷和功能组合失效问题,大多还停留在P2P网络下的研究,但随着Web服务应用的不断增加,海量数据服务的存储问题需要很好的去处理,而云计算拥有的动态迁移、高可用、负载均衡等技术可以很好地去处理这些问题。目前国内外对基于云计算环境下的Web服务选择还有很多可以研究的空间,因此对云计算环境下的Web服务应用进行探讨学习无论从理论上还是实践上都有重要的研究价值和社会需求。1.2 国内外研究现状及发展趋势1.2.1 云计算研究现状及发展趋势云计算在国外的研究

8、过程中,由于受到了一些大型科研机构及实力超群的IT公司的青睐与重视,使它的应用在各个专业领域更加广泛,其中发展最为高速的就是基于Internet的高新技术产业。由于近些年来对云计算的不断研究,现在这些跨国IT公司都拥有了相对稳定的云计算系统平台和实用的应用提供。云计算倡导者Google公司在2007年向全球公布了跨洋云计划,并且还与IBM强强联合把世界许多著名学府归入云计划里,这给云计算的理论研究和实践应用提供了可靠的物质基础。Google作为一家迅速发展起来的IT公司,其长远计划是组合所有的资源收集到云端,它合理使用其超大规模的低廉的服务器资源和强大的搜索引擎技术部署企业内部云计算。另外,G

9、oogle为了在PaaS(Platform-as-a-Service)市场中有自己的话语权,还精心开发了自己的云服务平台Google App Engine供服务消费者使用。IBM从实施“蓝云计划”以来,充分发挥其在高运转并行计算群集技术中的强项,在企业平台上也开始使用只有在Internet上才应用到的技术,使数据在企业中的运行就像在Internet的运算环境中一样高速精准。Amazon作为最典型的IaaS(Infrastructure asa Service)公司,几乎已成为IaaS的国际标准。Salesforce作为SaaS(Software asa Service)的先驱,曾提出了“软件终

10、结者”的口号,现在已经发布的产品包括:Cloud Infrastructure for CRM (Customer Relationship Management)、Sales Cloud、Custom Cloud、Service Cloud、Cloud Plat form for CRM。云计算的研究不但引起了国外的重视,国内对它的关注也不亚于国外,由于这些年对它的不断学习与研究,在国内也逐步地发展与成熟起来,国家还把云计算写入“十二五规划”中,作为将来信息科技技术产业的发展方向。云计算主要发展趋势可以简单概况为两个方面:(1) 加速与应用程序紧密结合的资源基础设备发展,扩大云计算服务的应用

11、规模;(2) 开发部署云计算应用程序服务,在网络让更多的使用者拥有更多精彩的在线体验。1.2.2 Web服务研究现状及发展趋势当今,在现有的研究成果上提出了许多基于QoS的服务选择方法,在Web服务发现的成果上对服务选择方法做了进一步的研究。如朱红康提出了主要借助服务质量本体和XML(Extensible Markup Language)语言的策略,并使用服务选择代理Agent在服务给予者与用户之间交互服务质量信息,从而在此条件下完成了一个变化的服务选择和服务代理框架。MAXIMILIENEM提出了使用矩阵来表示与具体业务领域相关的Web服务的服务质量模型,并在建立该模型的条件下提出了一种抽象

12、化的动态服务选择方法。在LIUY的研究成果上,WANGX进一步扩展已有的服务描述语义模型,并将服务质量的相关属性融入进去,提出了基于QoS的语义Web服务选择模型。但是,这些研究中提出的服务质量转换方法主要都集中于理论研究,其QoS属性和权重信息都是以实数的形式人为地给定,这种假设不能很好的满足实际的需要,同时还会使大量的服务失去数据信息。李祯提出了主要采用区间型数据来概况这些服务质量属性在某个时间点内的极值,此时再应用语言型数据信息来描述那些不能以具体数据来表示的属性,建立起相应的混合服务质量模型。王飞提出了一种在数据信息不明确的前提下,基于非确定事物的多层次结构的综合评价理论方法。岳昆为了

13、突破当前服务质量鉴定方法的客观性和片面性,并体现服务调用中的模糊性和各个元素间存在的必然联系,提出了一种基于模糊性因子组合的元素服务QoS的度量策略。但是,这些研究中提出的方法同样有很多问题还没解决好。通常评价服务质量的QoS指标有许多个,根据多属性决策理论,需要将这些多路径通过加权转换成单路径。现有的研究大多数是基于事件的确定性服务质量对服务进行选择,很少考虑服务质量的不确定与模糊性方面。近年来,云计算无疑是IT产业内发展最快,重视度最高的技术话题之一,自Amazon Web Services出现以来,更多的研究人员和企业开始关注云计算这种新的计算模式,因此将Web服务与云计算服务相结合应用

14、更是未来IT行业的一种趋势。2 云计算与Web服务简介2.1 云计算技术2.1.1 云计算的概念云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。因此,云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸、预测气候变化和市场发展趋势。用户通过电脑、笔记本、手机等方式接入数据中心,按自己的需求进行运算。 对云计算的定义有多种说法。对于到底什么是云计算,至少可以找到100种解释。现阶段广为接受的是美国国家

15、标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。2.1.2 云计算体系结构由于云计算作为一种兴起的新型服务模式,目前还没有统一的国际标准,所以对云计算体系结构的定义也就有许多不同的说法。NurmiD提出了基于Eucalyptus的研究,它是一款基于基础设备的开源云平台,它提供兼容AmazonEC2的API并且还能在多客户端下运行,从体系结构来分析它主要包括云控制器、结点控制器和集群

16、控制器这三个控制器。YouseffL博士则提出了基于终端层次来全面解析云计算技术的研究方法,它第一次描述了云本体五层结构体系,将云计算划分为云应用(如SaaS)、云软件环境(如PaaS)、云软件基础设施(如IaaS)、软件内核和物理硬件五层。罗军舟教授提出的观点则是从云计算具备的基于组合服务的弹性迁移的特点来分析,它的体系结构包括用户接口访问、核心服务、服务管理三部分上海云人科技CEO吴朱华在他的云计算核心技术剖析中对服务和管理两个层次的分析得出了云计算体系结构如图2.1所示。图 2.1 云计算体系结构从图2.1可以看出,在对服务层次方面的研究中主要以给用户一些云计算服务为主,包括软件及服务(

17、SaaS)、平台及服务(PaaS)、基础设备及服务(IaaS)三层服务。从用户方面来说,这三层服务是互不影响的,不同的用户需要的服务也都是不一样的;而从技术方面来说,这三层服务是相辅相成的。在对管理层次方面的研究中主要是对它资源环境的管理,保证系统能正常工作,实时有效地管理云计算。通过上述的分析可知,对云计算的研究无论是从角色层面还是针对不同服务来描述体系结构,它的实现原理与重要技术始终都是一样的。2.1.3 云计算实现原理云计算的基本实现原理是使用简化的接口,使海量的计算借用互联网分布到超多的并行计算机上进行处理,而不像传统的计算那样运行在远程服务器或本地电脑上,消费者能够借用电子设备终端(

18、智能手机、PAD、PC 等)按照需求来访问各种云服务。这样用户访问计算存储系统的时候能够根据自己的需求去使用,可以把各种资源应用到需要的服务上,完成资源的动态迁移与负载均衡,使得云计算的访问工作与互联网的机制一样。图 2.2 为云计算的简化实现机制。图 2.2 云计算的简化实现机制2.1.4 云计算的特点云计算是并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的发展,或者说是这些计算科学概念的商业实现。云计算是虚拟化(Virtualization)、效用计算(Utility Computing)

19、、将基础设施作为服务IaaS(Infrastructure as a Service)、将平台作为服务PaaS(Platform as a Service)和将软件作为服务SaaS(Software as a Service)等概念混合演进并跃升的结果。从研究现状上看,云计算具有以下特点。(1) 超大规模。“云”具有相当的规模,Google云计算已经拥有100多万台服务器,Amazon、IBM、微软和Yahoo等公司的“云”均拥有几十万台服务器。“云”能赋予用户前所未有的计算能力。(2) 虚拟化。云计算支持用户在任意位置、使用各种终端获取服务。所请求的资源来自“云”,而不是固定的有形的实体。应

20、用在“云”中某处运行,但实际上用户无需了解应用运行的具体位置,只需要一台笔记本或一个PDA,就可以通过网络服务来获取各种能力超强的服务。(3) 高可靠性。“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机更加可靠。(4) 通用性。云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一片“云”可以同时支撑不同的应用运行。(5) 高可伸缩性。“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。(6) 按需服务。“云”是一个庞大的资源池,用户按需购买,像自来水、电和煤气那样计费。(7) 极其廉价。“云”的特殊容错措施使得可以采用极

21、其廉价的节点来构成云;“云”的自动化管理使数据中心管理成本大幅降低;“云”的公用性和通用性使资源的利用率大幅提升;“云”设施可以建在电力资源丰富的地区,从而大幅降低能源成本。因此“云”具有前所未有的性能价格比。因此,用户可以充分享受“云”的低成本优势,需要时,花费几百美元、一天时间就能完成以前需要数万美元、数月时间才能完成的数据处理任务。2.2 Web服务2.2.1 Web服务的概念Web service是一个平台独立的,低耦合的,自包含的、基于可编程的Web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应

22、用程序。Web Service技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据Web Service规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。Web Service是自描述、自包含的可用网络模块,可以执行具体的业务功能。Web Service也很容易部署,因为它们基于一些常规的产业标准以及已有的一些技术,诸如标准通用标记语言下的子集XML、HTTP。Web Service减少了应用接口的花费。Web Service为整个企业甚至多个组织之间的业务流程的集成提供了一个通用机制。2.2.2 Web服

23、务的体系结构在如图2.3所示的Web服务体系结构中,应用实体全部都被抽象成一个个具体的服务。其中它包括:服务客户端、服务提供者、服务注册机构三个实体,它的三种主要操作为:发布服务(publish)、发现服务(find)和绑定服务(binding)。图 2.3 Web 服务体系结构2.2.3 Web 服务的技术架构实现Web服务的方式不是统一的,它可以拥有许多相关的技术。作为一个能被大家所承认的Web服务的定义是在如图2.4所示的基础上描述的一整套的标准。Web服务技术在因特网的基础上实现应用程序间的协作,从而使得许多业务操作自动化。图 2.4 Web 服务技术构架2.2.4 Web服务的核心技

24、术在Web服务技术中,标准的XML文档是Web服务技术核心(不管是SOAP、UDDI还是WSDL)的表示方式。为了方便大家更好地了解Web服务的核心技术,首先描述核心技术的基础XML。(1) XMLXML作为一种基于网络电子标记文本的可扩展标记语言,不同的应用可以通过它灵活地交换信息,因此可以将XML作为Web服务的构建。XML作为Web服务的技术基础,在处理企业的交易及在不同环境的计算体系中,能够使用它来校对数据,还可以优化整个信息的交换流程。(2) SOAP由于Web服务技术的不断发展与应用,企业能够把主流服务开发软件和互联网应用服务器联系在一起,实现应用程序间的通信。为了解决在异构基础设

25、施上运行的专有系统问题,Web服务需要依赖SOAP。SOAP是一个分散式、分布式环境中的一个轻量级的基于XML的信息交换协议,它定义了一个简单的、可扩展的XML消息传递框架。该框架能够基于多个不同的协议及不同的编程模型。SOAP本质上是一个无状态的,单向的消息交换方式。然而将底层协议与单向交换所提供的特性及具体应用信息结合起来,应用可以创建比较复杂的交换模式(如请求/响应、请求/多路响应等)。对于所传输的具体应用数据所涉及的一些问题,如SOAP消息的路由、有效的数据传送、防火墙穿透等,SOAP都没有特殊的限制。同样,对于SOAP节点收到SOAP消息后所需应对的措施,SOAP也提供了完整的描述。

26、(3) WSDLWSDL是一种基于XML的服务描述语言,它定义了与特定Web服务间的交互实现机制,通过该语言并且还能够抑制各种服务提供者以及应用该服务的所有使用者。WSDL的服务实现机制描述了一个指定的服务提供者怎样去完成一个具体的服务接口。服务实现描述了服务所在的位置,更精准的说,为了完成Web服务的调用,必须知道将信息传送给哪个网络地址。虽然并没有从Web服务的观点表述WSDL中的Web服务描述,然而Web服务描述仍然是用于约束服务提供者以及服务请求者的。这说明,WSDL表示服务服务请求者与服务提供者之间的一种“约定”,正如面向对象的编程语言(如Java)中的接口表示了客户端代码与实际对象

27、本身之间的“约定”一样。(4) UDDIUDDI是一个跨领域的注册标准草案。基于该协议以及对服务发现处理和发布的注册工具的支持,能够完成Web服务的发现与描述。UUDI是按标准化方式进行设计的,并不受限于任何技术。换句话说,UUDI注册库(UDDI Business Registration,UBR)中的条目可以包含任何类型的资源,无论这些资源是否基于XML。UDDI的目的就是供开发工具以及使用Web服务标准(如SOAP/XML和WSDL)的应用使用。它提供了一个全球性的、平台开发的、独立的框架,使得企业更加容易发展业务、发现合作商以及与这些合作商在互联网上进行交流。2.3 云计算与Web服务

28、的关系云计算的描述不仅包括了网格计算的一部分定义,而且也包含了很多传统技术,如效用计算、Web2.0、并行计算、网络计算等,所以说云计算也算是在已有技术的成果上成熟起来的,只不过是各技术的主要针对目标和面向对象不一样而已。云计算与其它相关技术的关系如图 2.5 所示.图 2.5 云计算与相关技术的关系云计算与网格计算有许多相似之处,也是希望利用大量的计算机,构建出具有强大的计算能力。但是云计算有着更为宏大的目标,它希望能够利用这样的计算能力,在之上构建稳定而快速的存储以及其它服务。而Web2.0正为云计算提供这样的机遇。在Web2.0的引导下,只要有一些有趣而新颖的想法,就能够基于云计算快速搭

29、建Web应用。这正是云计算所带来的直接变化。3 基于云计算的Web服务应用3.1 基于云仿真的Web服务选择3.1.1 问题的提出随着互联网上Web服务的海量增加,超大规模服务量的存储,传统的服务选择方法已不能符合用户复杂而又动态的请求。怎样根据用户的需求对Web服务进行选择,使运行在网络中的各类服务能根据需要组合在一起,实现服务间的快速集成,已经变成Web服务普及应用的一个严峻的挑战,该方面的研究同时引起了各领域的研究重视。国内外的研发人员对该问题进行相关方面的研究,并且取得了一定的成绩,但还有很多可以改善的地方。其中,随着网络上的Web服务数量的增多,消费者不仅看重组合服务的性能,而且非常

30、看重选择质量是否符合自己的喜好。此外,已有的研究对于解决传统Web服务集中式瓶颈和单点失效问题,主要集中在P2P网络下的研究,但随着互联网上Web服务的海量增加,超大规模服务量的存储,对于复杂事务缺乏有效的支持,对于大量的已有标准及新制定的标准缺乏一致的认同协调,而云计算可以较好的去处理这些难题。Web服务仅支持软件层次上的异构服务,用户调用的服务独立于开发语言和运行平台,而云计算技术不仅支持软件异构资源调用而且还支持硬件间的相互调用,具有很好的扩展性、容错性等等。因此将云计算与Web服务进行结合对于增加Web服务选择的性能有着至关重要的作用。3.1.2 Cloud Sim云仿真模拟器3.1.

31、2.1 Cloud Sim的工作形式网络计算与云计算最重要的差别之一就在于是否应用了稳定的虚拟化技术,在云计算平台中通过虚拟技术可以把Datacenter里面的物理资源抽象为能够应用的虚拟池,再把虚拟资源打包为一个服务以应用的形式展现在客户面前。云计算模拟器Cloud Sim也应用了此功能,该平台的扩展部分开放了Datacenter环境下的虚拟应用技术、云的抽象化建模和云计算仿真功能等一系列的接口。Cloud Sim的具体工作流程如图3.1所示。一般情况下,一台服务主机的资源能够按照用户的不同需求分配给数台虚拟机,所以各虚拟机之间对服务主机资源的占有存在一个角逐关系。模拟资源调度的云信息服务(

32、Cloud Information Service,CIS)和数据中心代理(Datacenter Broker)实现了资源的发现与交互,这两部分构成了Cloud Sim的核心组成部分。图 3.1 CloudSim 的工作流程 Cloud Sim 服务选择仿真流程采用Cloud Sim仿真真实的云计算实验,能够按照用户的实际需要去配置系统参数,如对数据中心主机台数的部署及主机中虚拟台数的设置,还包括虚拟机参数的设置等。用户也可以通过Cloud Sim平台对调度方法与抗压的稳定性两部分进行验证实验。如图3.2具体的展现了Cloud Sim仿真的数据流程48。CIS负责注册数据中心里已

33、经配置的资源,还包括Datacenter Broker的查询操作的注册,然后CIS向Datacenter Broker反馈有效信息。接着,Datacenter Broker在数据中心得到信息并进一步的部署虚拟机,最后再通过它来完成信息的交互。图 3.2 Cloud Sim 仿真数据流程3.2. 云环境下基于改进粒子群优化算法的Web服务选择3.2.1 标准粒子群优化算法(PSO)纪震阐述的标准粒子群优化算法(Particle Swarm Optimize,PSO)是基于某些动物群体的演化算法,通过种群之间的互相帮助和影响使群体尽快找到目的地得出最优解。由于其目的性强、需设置参数少、思想简单易懂

34、又易实现等特点,目前许多领域都已在使用。在PSO算法中,每一个优化问题的解都对应空间坐标里的一个“粒子”状态,每个粒子包含一个被优化函数抉择的适应度(fitnessvalue)来反映粒子当前的优劣状态,它们的运动轨迹则由当时的速度(Velocity)所决定。该算法的主要思想是先动态产生一群粒子并对其数据初始化,再由F(WS)迭代多次选出最优解。粒子在每次迭代的过程中,不断更新两个“最优值”来确定自己的当前位置:(1)粒子自身所发现的局部最优解pbest,即个体最优值位置;(2)粒子群在不断移动的过程中发现的最优解gbest,称为全局最优值位置。粒子通过得到这两个最优解后,就可以根据式(3.4)

35、、式(3.5)不断的对自身的位置与速度进行更改:式中为惯性系数,一般取值都是在0.5到0.9之间;c1、c2为加速因子,通常取值为2.0;1、2为介于(0,1)的2个随机独立函数;Pid(t)是个体粒子当时所处的极值点;Pjd(t)是整个种群粒子当时所处的全局极值点;xid、Vid是第i个粒子的第d维的位置和速度。3.2.2 算法实现描述关于云计算与Web服务的研究,可把基于粒子群优化算法去实现Web服务选择的方法应用于云仿真环境中。把一个粒子看成是一个Web服务,组成该路径子服务的个数由粒子的维数来表示,每一维的子服务对应较优服务集的个数则由该粒子的维数取值域来决定。粒子在整个的选择过程中,

36、都是对局部最优值与全局最优值的监视来不断更改粒子当时的位置和速度,生成下一代的粒子。当迭代运行完,输出一个极值粒子,它就是符合用户请求的粒子服务。此次算法的运行,以T作为每次迭代次数的一个周期,在每个周期里都要对候选解集作一次重排列与更新防止早熟。3.3云环境下基于用户偏好的Web服务选择研究3.3.1 问题的提出随着Web技术的快速发展,服务应用的不断增多,现有大多数服务又都存在功能单一结构简单的问题,而用户对于业务的需求又是动态的,所以如何根据用户的偏好请求来选择Web服务已经成为一种亟待解决的问题。怎样把分布在网络中的各类服务有序正常地集合起来,使不同服务之间能够有机的结合在一起,形成具

37、备实现商业化的强大功能的企业级服务流程,逐渐成为Web服务发展应用中的必然趋势。当前服务在选择的过程中主要使用了蚁群算法、遗传算法、线性规划法、粒子群优化算法等智能算法。3.3.2 Hadoop技术基础Hadoop是Apache组织下的主要针对大数据进行分布式处理的软件框架,作为云计算的核心原理,它由MapReduce与HDFS(Hadoop Distributed File System)两部分核心构成。MapReduce是一种大型数据并行化处理的模型,在这个模型基础上,使得分布式并行程序的编写与运行变得更加简单与快速。在对大数据集的处理规模上MapReduce可抽象为Map和Reduce两

38、个阶段函数,简单的说,MapReduce就是“事件的分解映射与结果的相似整合”,Map把输入文件分解成若干块,Reduce把处理后的数个结果并行化解整合出最后的结果。在所有阶段的输入输出中都以键/值对的形式进行,并由管理员决定它们的类型,管理员还需具体规定这两个函数3.3.3 云环境下基于改进粒子群优化算法的Web服务选择实粒子群分群机制分群粒子群优化算法就是在PSO算法研究上从一些已经选定的候选解中再将该粒子群分解成数个子群,这些子群再根据一个局部较优解进化成一个新的子群。在该算法的选择中,粒子分群和候选的较优解集合有机结合不断更新,这样使得算法的收敛速度减到最小,从而解决了该

39、算法早熟的难题。该方法包括三个基本组成机制:候选解集机制、分群机制和分群极值选择机制。(1) 候选解集机制:最先由式(3.3)来算出此时粒子群中每个粒子的F(WS)取值,根据F(WS)的取值来选出具有更好性能的粒子作为候选解,该粒子即为目标函数的最优值;其次根据海明距离(Hammingdistance)依据,使已选候选解集里的粒子保持一定的距离,即每个粒子的码距不宜太小,假设用S来代表较优解集的大小。(2) 分群机制:开始由式(3.3)算出分群粒子的F(WS)取值,根据F(WS)的取值选出此时分群粒子中的极大值和极小值;再次使用式(3.3)将分群重新分成n个子群,在所有的分群粒子群里的粒子与目

40、标函数都会产生一个相应的取值范围,第l个粒子的值域为(l-1)*(Max-Min)/n,l*(Max-Min)/n,设n是一个固定的函数,且n=S。(3) 分群极值选择机制:首先把候选集合中所有粒子的权值初始化为1,再从n个分群中无规则的选取一子种群作为分子群g,算出g在目标函数域的期望值mg;然后计算出候选集里的所有粒子e同分子群g的加权海明距离为deg=mg-y1e/We,式中y1e是粒子e在y1上的取值,We是e的权值;最后从候选解集中筛选出同g具有极大码距的粒子作为其全局极值解,假定选择的粒子为e,则设置e的权值为We=We +1。 算法实现描述在现实生活中,对于选择一样

41、的事件,用户往往具有自己独特的偏好。针对这种不同偏好的选择服务,本文将这样不确定的需求爱好抽象成一种模糊约束选择模型,将那些可能改变用户选择的元素定义为模糊约束符合问题的可变函数,而用户的需求偏好则组成一种模糊约束关系。依照用户使用模糊约束关系查找符合请求者偏好的思想,将用户需求抽象为一个三元组(X、Y、Z),其中:(1) X=X1,X2,X3,Xn是一个可变函数集,即决定用户抉择的元素集合。(2) Y=Y1,Y2,Y3,Yn是可变函数域的集, 每个 X i 能够取的任意一个值都被包含在 Y i 中,也就是用户选择服务的所有可能发生的情况。(3) Z=Z1,Z2,Z3,Zm是用来表示模糊约束关

42、系的集,也即是用户的喜好描述,里面所有的 Z i 都代表了一个在Yi1*Yi2*Yi3Yik,笛卡尔乘积范围中的模糊集合。根据之前所说的分群机制与用户喜好的描述说明,总结出了在云计算环境下根据用户不同偏好进行粒子分群的服务选择方法的一般思路:把一个粒子看成是一个Web服务,组成该粒子路径的子服务个数则由粒子的维数来表示,每一维的子服务对应较优服务集的个数则由该粒子的维数取值域来决定。粒子在整个的选择算法中,都是对局部最优值与全局最优值的监视来不断更改粒子当时的位置和速度,再根据用户的不同需求偏好生成下一代的粒子。当迭代运行完,输出一个极值粒子,就是符合用户偏好约束条件的服务组合最优解。此次算法

43、的运行以T作为每次迭代次数的一个周期,在每个周期里都要对候选解集作一次重排列与更新,避免产生早熟。设该算法运行的最大迭代次数为Tmax,则云环境下基于用户偏好的分群粒子群优化算法的服务选择流程如图3.3所示:图 3.3 CUPSO 算法的服务选择流程4案例分析基于云计算的Web服务系统体系结构云环境具有超大规模的存储和计算能力,资源和结构具有动态伸缩性,并且通过虚拟化技术和庞大的资源池按需提供服务。随着越来越多的云服务的出现,需要采用SOA技术来将其加以整合,尤其是在SaaS层面上的服务整合。从云计算与Web服务集成技术的结合入手,分析设计基于云计算的系统体系结构,并基于此提出了基于WebSe

44、rvices的异构数据集成方法和应用集成的总体架构,不仅能降低构建成本,同时大幅提高了系统性能。4.1 系统总体设计4.1.1 系统体系架构政府面对的信息资源及应用多种多样,来自不同的操作系统、不同的开发平台和不同的应用数据库。基于Portal平台的政府信息集成框架,试图以最小的代价在企业应用系统的构架层次上,为政府提供一个跨越多种分散的、内部和外部的信息处理过程的集成纽带,把这些信息整合到一起。系统利用分布式存储、数据仓库等先进技术,通过综合集成的方法,将各部门的信息进行应用集成、数据整合,为用户提供可靠、安全、准确的服务。系统的总体结构基于云计算设计理念,采用层次化结构设计,主要由基础设施

45、即服务(Infrastructure as a Service,IaaS)、平台即服务(Platform as a Service,PaaS)、软件即服务(Software as a Service,SaaS)以及安全防护与容灾备份体系组成。系统体系架构如图4.1所示。图4.1 系统体系架构基础设施层IaaS,为管理提供随遇接入、按需交换的基础信息网络,以及模块互换、接口一致、规格统一的平台,为构建信息化安全管理综合集成平台提供基础支撑。经过把计算、存储和网络资源通过虚拟化形成资源池,为用户提供基础、灵活的运算和存储服务。平台层PaaS,是在基础设施层IaaS之上,提供了数据、统一认证授权、工

46、作流、访问控制、地理信息、ESB等服务。对于用户而言,平台层如同一台安装了地理信息、数据库、消息中间件等系统的计算机,在此基础上可直接开发软件应用。该层整合了管理的资源信息,并通过数据计算、清洗、过滤、存储以及处理等,实现异构数据的同步、共享和交换,设计数据集成总线,构建管理的资源服务体系,为业务支撑提供精确的数据和资源服务。应用层SaaS,主要提供共用和专用服务,实现对资源的动态规划和组织运用,并可以根据用户需要和工作流程进行业务流程定制,为应用提供功能、业务和服务支撑。安全防护与容灾备份体系,依据国标,提供用户认证、访问控制、网络防病毒、HA、FT等安全防护手段和容灾备份策略,以提高服务和

47、数据的安全性、可靠性、抗毁性。系统对用户资源进行统一管理,可以与其他应用系统的用户管理模块对接,并能随相关业务系统实时更新访问权限。通过完善的授权机制及存取控制,用户访问权限控制到字段级别,确保用户只能访问其具有权限的应用系统及相关信息。4.1.2 异构数据集成在系统综合集成的环境中,共享、维护、操作数据源是必须解决的问题,异构数据集成屏蔽各种异构数据间的差异,对各种异构数据提供统一的操作,使集成后的异构数据对用户来说是统一的和无差异的。平台使用虚拟数据库法实现数据源的集成,其实现原理如图4.2所示。在虚拟数据库中,数据仍然保存在原来的各个数据源中,对数据集成系统的查询在运行时被分解为对各个数

48、据源的查询。集成系统仅提供一个虚拟的集成视图以及对这个集成视图的查询处理机制。在这种方法中,数据不用复制到另外的数据仓库中,并且保证在查询时的数据均是“新鲜的”。图4.2 虚拟数据库法当用户向中心服务器提交一个查询时,中心服务器把查询分送到每一个数据源,同时数据源接口把查询请求发送到相应的数据源中,事实上中心服务器可能给一个数据源接口发送很多查询,也可能不给该接口发送任何查询。从各个数据源中得到的结果返回给了中心处理程序,又由中心服务器集成这些结果数据,再把这些数据的局部模型转换成公共数据模型后呈现给用户。在系统集成中,数据中心的中心服务器建立数据映射规则表,使用Web Service技术,以

49、SOAP为传输协议,为用户提供各个异构数据库的共享信息及统一的查询界面,能够很好地解决互操作问题,真正实现异构数据源的无缝集成。在各个异构数据源所属的服务器中,以Web Service组件的方式提供远程数据库连接、查询服务,如图4.3所示。图4.3基于 Web Service的异构数据集成Web Service组件利用JDBC技术存取异构数据源中的数据,再通过Web Service的SOAP将数据传输至中心服务程序的Data Set数据集,最后,利用字段映射表将数据的局部数据模式转换至公共数据模式。4.2 集成应用该平台通过企业服务总线(ESB)、消息处理工具、流程集成(BPM)、企业门户(P

50、ortal)等工具来搭建集成环境。其中,实现集成能力的技术支撑组件包括部分软件产品和组件化应用,主要有统一身份认证组件、身份管理组件、统一授权组件、界面管理组件和访问控制组件等。平台的应用集成总体架构如图4.4所示。图4.4 平台综合集成总体架构应用系统集成以Web Service技术为核心,通过服务链接应用系统和平台及附属于平台的技术组件和业务组件,从而形成“平台+应用”的整体架构。利用ESB技术将各种复杂的业务系统与上层应用分离,通过消息、适配器和传输管道搭建中间平台,完成应用系统间的整合和集成。由于每个分系统的数据格式、传输协议、接口不尽相同,通过增加适配器将这些系统对外的接口进行包装并

51、挂接到统一的服务总线上。如果现有系统本身提供了数据发布接口(如Web Service、JMS等),则可直接在接口层进行适配器的编码;如果系统是单机应用或不提供对外的数据接口,则通过Web Service技术将这些系统对外的接口进行包装。利用Web Service能够很好地解决异构系统之间的通信、数据共享问题,Web Service的基本应用模式就是所有的服务端组件都以Web服务的形式提供服务。从使用者的角度来看,不管底层是使用EJB,还是CORBA或者DCOM,最终面向用户的都是一个统一的Web服务调用接口,通过Web服务统一的接口调用,完全屏蔽了不同服务端组件之间的差异。具体方法是:通过建立

52、内部Web服务平台,将内部各种系统进行Web服务改造,即利用系统的逻辑建立相应的Web服务接口,并发布到内部的UDDI中,其他系统欲使用其相关功能时可以通过调用相关的Web服务接口来实现,使得原有的采用不同平台、语言、工具开发的各个分散的系统通过Web服务的模式得以重新应用,为系统提供了进一步扩展的开放平台。图4.5描述了基于Web Service的应用集成的基本模式。图4.5 基于 Web Service 的应用集成如图4.5所示的那样,基于Web Service实现应用集成,就是要使用Web Service封装、转变遗留系统(包括CORMA组件、EJB组件、DCOM组件等不同规范、语言实现的应用组件,以及非分布式的应用程序)。通过使用Web Service建立统一的调用接口,并通过内部的私有UDDI注册中心发布Web服务调用接口,这样其他的应用系统及Web服务就可以通过查询企业内部的UDDI注册中心发现并绑定所需的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论