18
May,2017
什么是GIS服务器集群
GIS服务器集群,是指将多个GIS服务器成群组,当有用户请求到达集群服务器时,集群服务器的父节点统一对GIS服务进行调配,使GIS服务器群组发挥更高的性能、更稳定的服务以及更加灵活的服务器结构。
工作原理
用一张图来解释GIS集群技术:
如上图所示,用户请求集群父节点,父节点将任务进行分配。分配到任务的子节点完成请求任务后,把结果发给集群父节点,最终再由父节点响应给各个请求用户。
通俗讲就是,一下子来了许多任务,领导(父节点)把任务进行分配,交给手底下的员工(子节点)处理,员工处理完成后,在把结果交给领导,最终再由领导给提出任务的人进行答复。
关键技术--负载均衡
负载均衡分软件负载与硬件负载,这里我们所介绍的是软件负载。负载均衡是指将集群中各个子节点压力平均,其核心就是“分摊压力”。 例如:当集群中的iServer父节接收到很多请求时,父节点会观察子节点谁空闲,谁压力小,那么我就把这个请求交给你来处理,从而保证各个节点压力均衡。
为什么要用GIS服务器集群技术
1.提高服务整体性能
以SuperMap iServer 集群为例,50个用户并发访问(同时访问)GIS服务,从是否搭建集群,服务器响应时间的对比测试中可以看到:
●没有集群(既一个GIS服务节点异步处理50个用户并发请求)
●配置有两个GIS服务节点的集群(既一个父节点两个子节点组成的GIS集群,处理50个用户并发请求)
如上图所示,将单机50用户响应时间与集群50用户响应时间对比,集群响应效率更高。
2.增强可靠性
如使用单机,服务器如发生断电、断网、宕机等情况下,其所提供的服务将会中断,从而影响用户使用;但如使用集群,当50个用户同时访问时, iServer集群中一个子节点坏了,父节点会将其中工安排给其他子节点做,用户仍然能得到正确的结果,这是传统单节点所做不到的。
3.提高可扩展性
单机下,用户若想扩展系统能力,不得不购买更高性能的服务器,才能获得额外所需的CPU 和存储器。如果采用集群技术,则只需要将新的服务器加入集群中即可,对于客户来看,服务无论从连续性还是性能上都几乎没有变化,好像系统在不知不觉中完成了升级。
4.降低成本
计算机性能达到一定程度,要提升,其成本就会大幅度上升,比如超级计算机动辄上百万美元,不是一般企业能够承受的。而且GIS数据本身就十分庞大,升级则意味着硬件要求会更高。而将多个普通服务器搭建成集群,采用集群技术可以使SuperMap服务器同样发挥其相同的性能,比采用同等运算能力的大型计算机便宜的太多了。
测试案例
某生产环境,最开始设计只是几个部门使用,随着系统功能越来越丰富,推广至全公司使用。但是使用中遇到了问题,单台服务器响应时间是越来越长。为此,他们搭建了SuperMap iServer 集群(一个父节点,2个子节点)。经过测试,使用集群,响应时间大大缩短,单位时间内处理的数量也越来越多。
下面就升级前后,观察服务器的处理能力。
先看上图响应时间,红色线代表用户数;紫色线代表单机响应时间,绿色线代表集群响应时间。随着用户数量(红色线)的增加,单机(紫色线)响应时间越来越长,而集群(绿色线)响应时间波动不大。最终,当增加到1000用户数,未使用集群响应时间为2.19秒,而使用了集群,响应时间为0.14秒 。
再看上图点击数(点击数用来评估用户产生的负载量,是测试服务性能的重要指标)。红色线代表用户数,紫色线代表单机,绿色线代表集群。随着用户数量(红色线)的增加,单机(紫色线)当每秒点击数量达到240次左右到达极限,同一时间内,集群模式(绿色线)每秒点击数量持续大幅增长中。最终,当增加到1000用户数,未使用集群每秒点击数量最大可到240次,而使用了集群,每秒点击数量可以达到472次。
通过以上对比,我们就能很明显看出使用集群的优势。
展望:今天介绍了GIS服务器集群概念,后期我们会为大家带来服务器集群搭建具体步骤,敬请关注。
往期精彩内容:
2017-05-11 五分钟学GIS | Docker在GIS中的应用
2017-04-27 五分钟学GIS | BIM与三维GIS的融合
五分钟学GIS,让每一期都是一次充电!
欢迎关注超图知道公众号,下期更精彩!





