论文(设计)基于聚类调度负载均衡的WebGIS 模型.doc
《论文(设计)基于聚类调度负载均衡的WebGIS 模型.doc》由会员分享,可在线阅读,更多相关《论文(设计)基于聚类调度负载均衡的WebGIS 模型.doc(10页珍藏版)》请在三一办公上搜索。
1、基于聚类调度负载均衡的WebGIS模型基金项目: 国家863项目:面向网络的三维空间信息服务技术研究与软件开发(No.2009AA12Z211).作者简介: 黄颖(1981-), 女, 博士, 主要研究方向为GIS,网络地理信息系统及其应用等. E-mail: mayying_2003.黄颖, 谢忠, 吴亮, 郭明强中国地质大学信息工程学院, 教育部地理信息系统软件及应用工程中心, 湖北武汉 430074摘要: 为了提高网络地理信息系统(WebGIS)并发访问性能,研究了现有WebGIS负载均衡技术的缺陷,分析了在大用户量并发访问情况下利用协作任务聚类技术解决WebGIS负载均衡的必要性和可行
2、性,提出了基于聚类调度负载均衡的WebGIS模型,重点研究了聚类调度负载均衡算法,最后建立试验床,通过一系列的试验结果验证了本模型良好的并发性.关键词: WebGIS; 负载均衡; 聚类调度. 中图分类号:TP301.6文章编号:收稿日期:A WebGIS Model based on Cluster Scheduling Load-balancing Algorithm HUANG Ying, XIE Zhong, WU Liang, GUO Ming-qiangFaculty of Information Engineering, China University of Geoscienc
3、es, GIS Software Research and Application Engineering Center of the Ministry of Education, Wuhan 430074, ChinaAbstract: In order to improve the concurrent access performance of WebGIS, this paper studies deficiencies of load-balancing technologies in the current webgis and analyzes the necessity and
4、 feasibility to solve load-balancing in webgis based on collaborative tasks clustering technology under the situation of large volume of concurrent accesses. A webgis model based on cluster scheduling load-balancing algorithm is proposed. The key is to research the cluster scheduling load-balancing
5、algorithm. A test-bed is established. A series of test results prove that the model has good global load balancing performance.Key Words: webgis; load-balancing; cluster scheduling.0 引言WebGIS是Internet技术应用于GIS开发的产物,它的基本思想是在互联网上提供地理信息,实现地理数据的远程互操作和互运算,并进行在线分析和数据挖掘.随着网络技术和GIS技术的发展,WebGIS已成为空间信息发布和共享的主要
6、途径,在跨平台、分布式的数据共享和互操作领域的需求日益强烈(何江等,2004).在WebGIS环境中,任务调度系统是其重要的组成部分,空间计算已从单任务向顺序性、并行性、协作性任务发展.大型协作性空间计算往往被分解为多个计算子任务,分解后的各个子任务之间依赖关系对WebGIS中大型协作性空间计算任务调度和负载均衡提出了新的挑战.目前主流的一些WebGIS系统,如ArcGIS Server、MapGuide Enterprise、GeoBeans等在某些方面具有良好的表现,但仍存在网络传输和地图服务器负担过重,并发访问能力不适应日益扩大的 WebGIS系统规模的不足,该缺陷制约了WebGIS的应
7、用.本文通过分析现有WebGIS负载均衡技术的缺陷,提出一种有效的基于聚类调度负载均衡的WebGIS模型,有效提高了WebGIS系统并行处理能力,并建立试验床,通过一系列的试验结果验证了本模型良好的全局负载性.1 现有WebGIS负载均衡技术及其缺陷现有WebGIS系统主要从硬件和软件2个方面解决负载均衡问题.硬件上通过专用的负载均衡器或提高地图服务器的CPU处理速度、增加内存容量等办法(江飞等,2006)提高系统性能,但代价昂贵.软件方法提供了廉价而有效的负载均衡机制,目前已有相关探索,如最短任务队列法、基于网络轮询法、比例系数法等.以上算法的基本思想是通过计算当前任务大小与当前网络负载量,
8、最终把目标任务传送给当前网络上负载最小的一台处理器处理.目前已有的对WebGIS中负载均衡的研究大多是针对单任务、顺序性任务.单任务、顺序性任务是WebGIS中空间计算任务的简单形式,解决的问题比较简单且未能体现任务之间的数据关联与优先约束关系;而传统的DAG(Directed Acyclic Graph,有向无环图)任务图只刻画了任务的计算量、通信量与优先关系,只能作为同构计算环境的调度模型(康志伟和张胜,2006),在为协作性任务选取资源时需要综合考虑任务的计算量、任务之间的依赖关系及资源的负载能力、资源之间的网络状况,显然,一个能够综合描述上述各种因素的调度模型和基于该模型的高效的求解方
9、法是协作性任务调度的关键.2 基于聚类调度负载均衡的WEBGIS模型网络地理信息服务中的三大类问题使得用户请求WebGIS系统响应时间的延长.一是数据提取;二是数据传输;三是数据显示(李锐等,2009).测试发现:地图服务器在处理数据加载和空间分析操作时所用的时间与处理结果从地图服务器传输到Web站点显示所用的时间相差了好几个数量级.当后台的数据量越大,这种差别就越发明显.随着WebGIS系统用户数和网络流量呈几何级数增长,对地图服务器的并发性能提出了很高的要求.因此,并发访问能力和响应速度一直是WebGIS模型的主要改进方向.WebGIS的体系结构经历了从集中式体系结构、分布式两层体系结构到
10、分布式多层体系结构的演变(刘晖和王玉娥,2009).目前主流的分布式多层WebGIS模型主要有以下两种:(1)基于Web服务+组件的WebGIS模型(康志伟和张胜,2006;李光辉等,2008),如图1(a)所示;(2)基于Socket+组件的WebGIS模型(郭明强等,2008; 谭靖等,2008;边馥苓和周泽兵,2008),如图1(b)所示. (a)(b)图1 目前主流分布式多层WebGIS模型Fig.1. The current mainstream distributed multi-tier webgis modela.基于Web服务+组件的WebGIS模型; b.基于Socket+
11、组件的WebGIS模型张胜、李光辉等均采用Web Service直接调用GIS组件来实现网络地理信息服务.Web Service可以供网上任何能够发现它的应用程序调用,甚至其他的Web Service也可以调用它.利用Web Service,可以很好地实现服务在Web层次上的互操作(罗显刚等,2006).但是,通常的Web Service调用是一种静态引用的调用过程,在跨越网络防火墙时,由于大量的数据传输和分布式数据处理工作效率不是很理想(吴信才和吴亮,2006).另外,Web Service依赖于IIS(Internet Information Services,互联网信息服务)或其它Web
12、服务器,性能受到极大的限制,在进行大型的空间计算任务时,很难支持大用户量并发访问,服务器的并发处理能力较弱.目前的WebGIS系统Web服务器与地图服务器间紧密耦合,不同平台的服务器进行部署需要复杂的接口完成交互,系统的集成和维护代价较大.张胜等人的研究中服务组件可以通过一个配置文件“集成”到应用服务器框架中实现服务的组合;李光辉等通过一定的负载均衡算法将地图服务器“附加”进WebGIS系统.以上方法都部分地实现了业务逻辑和组件的重用性.但其所设计的地图服务器的功能均不可扩展,若需要在WebGIS系统中扩展一些企业级应用功能则显得力不从心.郭明强、谭靖、周泽兵等均采用了基于Socket的通信机
13、制.虽然基于Socket的通信机制能够快速处理客户端提出的各种请求,但在请求前必须与地图服务器端的Socket监控程序建立连接通路.在实际应用中,客户端与服务器端将一直保持Socket连接,因此,在WebGIS客户端必须通过Session保存Socket连接,当访问用户量较大时,过多的创建Socket通信连接将占用WebGIS客户端和地图服务器端大量资源,极大地限制了WebGIS系统的并发处理能力.为了解决以上问题,本文提出了一种有效的聚类调度负载均衡WebGIS模型.摈弃了Socket通信以及Web服务与组件紧密藕合的方式,整个体系采用Web 服务+负载均衡调度器+地图服务器的机制,所有的G
14、IS应用功能均由独立的地图服务器上的空间计算任务完成,用户在使用过程中直接调用服务,然后由服务发送操作请求到负载均衡调度器,通过聚类调度负载均衡算法分配给相应的地图服务器处理, 地图服务器多线程并发处理完成任务的并发操作,有效提高了WebGIS系统的并发能力,容错能力及可伸缩性.模型结构图如图2所示.图2基于聚类调度负载均衡的WebGIS模型Fig.2. The cluster scheduling load-balancing webgis model本模型由客户端(Web Browser)、WebGIS 门户(WebGIS Portals)、Web服务总线(Web Service Buse
15、s)、负载均衡调度器(LoadBlancers)和地图服务器(Map Servers)五个层次组成,层间结构清晰,耦合度低,相互联系形成一个有机整体,较大地提升了WebGIS系统性能.各层通过分布式部署,使模型具有可伸缩性,易于维护和配置,降低了使用成本.2.1 客户端与WebGIS门户客户端采用普通的Web浏览器浏览WebGIS门户站点.WebGIS门户站点通过IIS或Tomcat等网络信息服务器,把来自客户的请求以SOAP信息包的形式通过HTTP协议发送给Web服务总线相应接口,实现客户端GIS计算.2.2 Web服务总线层以统一的分布式Web服务接口的形式向用户提供集成和共享的GIS服务
16、相关功能,并通过HTTP协议向负载均衡调度器发送以XML描述的任务请求列表.Web服务总线包括四类服务接口:空间数据服务接口,元数据服务接口,OGC服务接口,其他自定义扩展接口.2.3 负载均衡调度器层通过聚类调度负载均衡算法,合理分配来自Web服务总线的XML处理请求,解决多个地图服务器的负载均衡问题.消息监听器监听到来自Web服务总线的请求后,立即通知总控模块.总控模块下包含任务求解机制,根据聚类调度负载均衡调度算法把来自服务总线的XML处理请求发送到多台分布式部署的地图服务器结点上,达到均衡负载的目的.处理完毕后通过动态反馈机制返回给客户层.为解决负载均衡调度器的单点故障问题,本模型提供
17、了负载均衡调度器的容错处理机制.2.4 地图服务器层处理负载均衡器分配的地图服务处理请求,并把结果返回给负载均衡器聚合处理,最后呈现给客户层,为用户提供高效的地图服务.采用组件、多线程、缓存等技术提供栅格和矢量数据相关服务.服务配置容器:包括多线程并发处理器及缓存管理器.多线程并发处理器:负载均衡调度器主要负责多个单用户请求的任务分解,而多线程并发处理器解决多地图服务器多任务并发问题.二者相辅相成,可大幅度提高整个WebGIS模型的并发处理性能.缓存管理器:包括用户会话状态缓存池及数据操作对象缓存池.(1)用户会话状态缓存池:保存用户访问的地图状态对象,以保证系统出现故障时服务器上所有用户的请
18、求状态不丢失,以便用户继续透明请求地图服务.(2)数据操作对象缓存池:可将用户已创建的数据对象缓存,以便重复使用,从而在一定程度上减少频繁创建对象所造成的开销.地图服务器功能库:包括功能组件库与功能扩展库.(1)功能组件库:采用组件式的开发思想,以接口的方式提供各种GIS功能,是GIS应用的最终实现者.每个功能组件根据不同粒度实现不同GIS功能,多个功能组件可根据需要动态组成一个新的应用,实现组件的复用.(2)功能扩展库:提供可定制的GIS功能组件,开发人员可根据系统需求将个性化的功能组件嵌入到地图服务器功能库中,降低开发成本,加快开发进度,提供系统的灵活性和扩展性.同时提供系统运行状态报告.
19、异构数据中间件:包括异构空间数据库中间件和异构属性数据库中间件,用于操作多源异构空间数据和属性数据.2.5 数据层包括栅格数据库、矢量数据库和属性数据库,保存WebGIS系统所需的各种数据信息.3 聚类调度负载均衡机制3.1 负载均衡算法(1)动态计算负载均衡权值当地图服务器结点初次加入到地图服务器集群中使用时,根据结点的软硬件配置情况对每个结点都设定一个初始负载权值(通常硬件配置越高的结点默认值越低),在负载均衡器上也先使用这个权值初始化地图服务器负载权值列表、地图服务器结点信息表及服务器状态列表.然后,随着结点负载的变化,负载均衡调度器对权值进行动态调整.结合每个结点当前的权值,可以计算出
20、新的权值的大小.动态权值的目的是要正确反映结点负载的状况,以预测结点将来可能的负载变化.对于不同类型的系统应用,各个参数的重要程度也有所不同.典型的WebGIS应用环境下,可用处理器、内存资源和当前处理能力(服务响应时间)就非常重要;如果用户以长事务为主,则CPU使用率和可用内存就相对重要一些.为了方便在系统运行过程中针对不同的应用对各个参数的比例进行适当调整,我们为每一个参数设定一个常量系数,用来表示各个负载参数的重要程度.各地图服务器负载权值主要由以下三方面决定:地图服务器的软硬件性能线性综合参数Hi,权值为W(h);负载均衡调度器与地图服务器之间的网络状况参数Ti,权值为W(t);地图服
21、务器即时处理能力Pi,权值为W(p).动态计算负载权值流程如下:首先,根据地图服务器软硬件配置信息计算地图服务器软硬件配置所占权值.各个硬件配置的性能值和权值定义如表1所示.其中,Ci, Mi, Di,Ni, Oi1, W(c)+ W(m)+ W(d)+ W(n)+ W(o)=1.表1 性能值、权值定义表Table 1 The definition of performance value and weight param硬件名称性能值权值CPUCiW(c)内存MiW(m)硬盘DiW(d)网卡NiW(n)操作系统OiW(o)根据上述参数和服务器软硬件配置权值计算地图服务器软硬件性能线性综合参数
22、Hi: (1)上述公式中动态性能参数W(c)表示CPU使用率、W(m)表示内存使用率、W(d)和W(o)表示磁盘IO访问率、W(n)表示网络带宽使用率.其次,计算出软硬件性能线性综合参数后,再根据地图服务器的网络延时ti计算出各个地图服务器的网络状况参数,其计算公式如下: (2)然后再向各个地图服务器提交运算任务,根据运算时间pi(负载均衡调度器向地图服务器提交运算任务并得到结果所花的总时间)计算各个地图服务器处理能力权值,其公式如下: (3)通过式(1)-式(3),可得出各个地图服务器的动态负载权值: (4)负载均衡调度器周期性的运行动态采集程序,查询该结点的各负载参数,并计算出动态权值Li
23、.(2)生成协作性空间计算协作聚类当负载均衡调度器接收到Web服务器发送的一个协作性空间计算任务请求时,从协作空间计算任务描述器得到空间计算任务的非循环有向图即各子任务执行的时序关系及各个子任务之间的依赖关系,根据各个子任务之间的通信时间和计算时间把子任务构成协作任务聚类.设得到任务图如图3所示:任务图描述:G=(T, E, e, c)T= t1, t2, tn -n个子任务E=(ti, tj) | ti, tj之间需要进行通信e(ti)-ti的计算时间c(ti, tj)-ti, tj的通信时间在考虑通信时间时,硬件统一时钟,同样性能,任何两机之间,相同通信量的通信代价一样.计算时间是根据协作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 论文设计基于聚类调度负载均衡的WebGIS 模型 论文 设计 基于 调度 负载 均衡 WebGIS
链接地址:https://www.31ppt.com/p-2397532.html