骆剑锋, 陈俞强
(东莞职业技术学院 计算机工程系, 广东 东莞 523808)
采用环加星型网络结构负载均衡集群技术的云平台设计
骆剑锋, 陈俞强
(东莞职业技术学院 计算机工程系, 广东 东莞 523808)
摘要:设计运用独特的负载均衡集群技术,构建一个兼顾性能可靠、运行安全和成本节约的云平台.使用环型网与星型网相结合的网络结构,并施以组合形式多样化的计算技术,解决传统云平台技术的诸多问题.可靠性测试显示:负载越高时,设计的云平台性能越好,而且具有长期稳定的技术特性.
关键词:云平台技术; 负载均衡集群技术; 网络拓扑; 分布式计算; 流水线计算
云平台面对大量的计算,必须能适应计算量的增加[1].对于不断增加的计算量,更换服务器需要较高的成本,改进旧的服务器是一种较经济的选择.从长远看,云平台使用负载均衡集群技术,可用多台设备进行分布式计算,从而提高性能.现在常用的服务器集群方式是多层层次结构,只适用于分布式计算,且存在瓶颈与网络线路低可靠性等问题[2].因此,本文运用独特的负载均衡集群技术,构建云平台的数据库与Web服务器,使计算的压力充分分到不同的计算机上,降低了局部计算机的负担和风险.
图1 云平台的结构Fig.1 Structure of cloud platform
1云平台结构和网络拓扑图
云平台的结构,如图1所示.由图1可知:分工明确的服务器集群里有提供Web服务、数据库和注册服务的集群等.
云平台的网络拓扑图,如图2所示.图2(a)中:四角分别有4个小圆,它们是提供Web服务的集群,用户使用特定的IE访问它们,它们提供相同服务,特定IE会根据Web服务器的性能,决定访问哪一个集群;数据1~数据6组成一个环型网,是常用数据库集群;数据A~数据D也是环网,是存储长期和重要的数据的数据库集群.图2(b)中:注册主页中转服务器会根据上一层服务器的性能决定用户在哪个服务器中注册及生成特定IE,发送特定IE软件到用户E-mail中,用户再从E-mail中下载并使用其访问Web服务器集群.
(a) 主要功能区 (b) 注册与下载区域图2 云平台的网络拓扑图Fig.2 Network topology of cloud platform
2云平台功能区和数据库网络与服务器集群
数据库的网络拓扑图,如图3所示.图3中:3个环的作用是当网络某处出现故障时,使其能正常通讯;数据库分3层,第三层(内环N1~N3)是重要及长期保存的数据库,作备份用,第二层(中环Z1~Z4)是第一层数据库的热备份,一旦第一层(外环W1[3]~W3)数据库出现故障,马上切换.外环有多个数据库,根据用户ID进行映射,决定被哪个Web服务器访问.
除了网络的设计,服务器间集群方式也很重要.数据库的水平与垂直分割的集群示意图,如图4所示.图4中:按照数据库提供的信息分类进行分割,不同的服务访问对应的数据库设备,把负荷分散,提高性能(FG1);用户的查询比操作活动多,因此,查询与操作分开设备进行,性能再次提升(FG2).此外,也注重数据库内的设计,如表的垂直与水平分割[4].
图3 数据库网络拓扑图 图4 水平与垂直分割 Fig.3 Network topology of database Fig.4 Horizontal and vertical segmentation
1) 表的水平分割.在设计表时,某些表的数据可能很多,使表变得很长,不利于查找[5],因此,把它变成多个表存放.在查找数据时,用哈希查找方法定位,就会快很多.2) 表的垂直分割.在设计表时,表中常被查找的字段与不常被查找的字段分开,分别成一个表.
除了数据中心外,设计的平台还要通过Web服务器对外提供服务,进行多环加星式的服务器集群.其中,环的集群有利于流水线计算,而星型的集群则方便分布式计算,具体选择要看Web服务器提供什么服务.此集群方式的示意图,如图5所示.图5是一个环加星的Web服务器集群,如果要面对巨大的计算或应付众多用户频繁的访问,必须选择多个环加星集群再结合特定IE的集群方式,如图6所示.
图5 Web服务器的集群方式图 图6 多环加星结合特定IE的集群 Fig.5 Ways of the cluster Web server Fig.6 Cluster of multiring and star network special IE
特定IE不只有浏览功能,它应该还有其他的功能,如图7所示.IE的实现并不难,在许多编程环境中都提供有控件(Web Browser)和对象(Document)[6].用户使用IE需要进行注册,注册后下载本平台IE.这个IE的注册模块及其集群形式,如图8所示.
图7 基本功能模块图 图8 注册功能的服务器集群 Fig.7 Basic function module diagram Fig.8 Server cluster for registration function
图9 故障示意图Fig.9 Diagram of breakdowns
3可靠性和性能分析
3.1可靠性分析
设计采用环型网络与星型网结合,保证平台不因某处的网络故障而停止服务.设备采用冗余方式,且使用磁盘陈列.因此,单个设备的故障不会造成服务停止.充分考虑负载均衡,以免造成死机.以一故障为例,其示意图如图9所示.
计算本平台因故障而完全停止服务的概率(以图2(b)的设备数量为例).设每条线路出故障的概率为px,设备出故障的概率为ps,那么,对所有Web服务器集群都不能提供服务的概率(pw)为
式中:px2表示环结构一般出现2处故障,网络才失去通讯能力;ps4表示Web服务器集群有4个服务器,最差的情况是所有服务器都故障,这个集群就不能提供服务;(px2+ps4)4表示服务器集群有4个.
数据中心不提供服务的概率(pd)为pd= px16+ps4,则本平台完全不能提供服务的概率(P)为P=pw+pd=(px2+ps4)4+px16+ps4.
现实中,一条正常的线路工作20h,出现一次故障,而发现、检测、修复的时间一般为1h[7].所以,px可以估值为1/20.同样,ps大概为1/20.从而得出P约为1/160 000,即18a中有1h故障.
3.2性能分析
本平台的性能主要取决于Web服务器集群,它可以为运行的服务提供多种计算形式,如流水线计算、分布式计算、流水线与分布式混合式计算.
如果服务可以分成多个子任务计算,那么,可以用流水线完成.设n为任务数,每个任务分成k个子任务,Δti为第i个子任务所需的时间,则流水线完成n个任务所需的时间[8]为
不用流水线,那么,完成任务所用的时间为
假设有100个任务,每个任务分成10个子任务,每个子任务完成的时间为1s,那么,tK1为199s,而tK2为1 000s.所以,用流水线计算要快4倍.当然,如果任务数增加,倍数也会随着增加.
如果服务可以分成多个子任务并行计算,那么,可以用分布式完成.其性能分析为
(1) 分布式:tK1=(n)max(Δt1,Δt2,…,Δtk),
(2) 一般式:tK2=(∑Δti)+(n-1)(∑Δti).
图10 性能分析对比图Fig.10 Performance analysis of the comparison chart
如果假设的情况与流水线的例子一样,那么,tK1为100s,而tK2为1 000s,相差9倍,并且随着任务数的增加,倍数也随之增加.根据上面例子所做的性能分析图,如图10所示.图10中:N为任务数;t为时间.由图10可知:单机计算与流水线和分布式计算的差别.
4结束语
本平台在多个单位得到应用,运行的是工作流系统.有不少服务器用PC机代替,但本平台已经持续运行半年多,并且曾多次进行软硬件升级.据统计,平台平均每天访问量为每次8 390人,每人在一天内的平均操作时间为2h,平均每天被访问时间为15h,其并发数为每小时1 049个任务,并发数峰值为每小时1 155个任务.使用流行配置的PCServer构建的B/S系统作对比,它的并发数一旦接近每小时300个任务,便要进行重启.当然,服务的高可靠性、高性能和易扩展性等是由众多因素决定的[9],如服务的程序使用了落后的算法、过多外部命令的调用、在不稳定的操作系统上运行等也是降低性能及可靠性的因素[10].这是将后续需要研究的课题.
参考文献:
[1]KHAZAEIH,MISICJ,MISICVB.PerformanceanalysisofcloudcomputingcentersusingM/G/m/m+rqueuningsystems[J].IEEETransactionsonParallelandDistributedSystems,2012,23(5):936-943.
[2]ZHANGLiangjie,ZHOUQun.CCOA:Cloudcomputingopenarchitecture[C]∥IEEEInternationalConferenceonWebServices.LosAngeles:IEEEPress,2009:607-616.
[3]黄河,刘旭东,孙海龙.云计算环境下服务中间件动态管理框架的设计与实现[J].计算机工程与科学,2013,35(1):30-35.
[4]常玉红.基于云平台的空间数据分发与管理系统研究[J].计算机应用与软件,2012(11):252-256.
[5]AVILAP,MOTAA,PIRESA,etal.Supplier′sselectionmodelbasedonanempiricalstudy[J].ProcediaTechnology,2012,5:625-634.
[6]刘正伟,文中领,张海涛.云计算和云数据管理技术[J].计算机研究与发展,2012,49(增刊1):26-31.
[7]黎宏剑,刘恒,黄广文,等.基于Hadoop的海量电信数据云计算平台研究[J].电信科学,2012,28(8):80-85.
[8]罗军舟,金嘉晖,宋爱波,等.云计算:体系架构与关键技术[J].通信学报,2011,32(7):3-21.
[9]骆剑锋.混合模式下的主题自定信息收集系统[J].科技通报,2012,28(4):91-93.
[10]叶丹丹,罗继亮.利用Petri网特征结构的故障诊断方法[J].华侨大学学报(自然科学版),2014,35(4):378-382.
(责任编辑: 黄晓楠英文审校: 吴逢铁)
Cloud Platform Based on the Ring Star Network and Load Balancing Technique
LUO Jianfeng, CHEN Yuqiang
(Department of Computer Engineering, Dongguan Polytechnic, Dongguan 523808, China)
Abstract:Adopting the cluster load balancing technique to design a unique high-performance, reliable, and easily expanded cloud platform, as well as applying a combination of ring and star network and a various multi-formed counting technique to solve the problems of the traditional platform technique. According to the reliable tests: the higher of the load, the better performance and longer stability will be achieved.
Keywords:cloud platform techniques; cluster load balancing technique; Network topology; distributed calculation; pipeline calculation
中图分类号:TP 302
文献标志码:A
基金项目:广东省优秀青年教师人才培养计划资助项目(2015S02, YQ2013201); 东莞职业技术学院示范建设专项资金资助项目(ZXHQ2014D001)
通信作者:骆剑锋(1981-),男,副教授,主要从事系统设计、软件开发的研究.E-mail:251048547@qq.com.
收稿日期:2015-12-22
doi:10.11830/ISSN.1000-5013.2016.02.0164
文章编号:1000-5013(2016)02-0164-04