SuperMap iServer 普通集群配置及使用

作者:bsy

文章目录

  • 前言
  • 一、集群概述
  • 二、集群的使用
  • 三、集群的配置
      • 安全控制
      • 集群类型
      • 节点列表
      • 集群转发配置
  • 四、受控集群


前言

集群是指将 SuperMap iServer 服务注册到集群服务器中,并提供单一客户视图的服务。当有服务请求到达集群服务器时,集群服务器采用集群技术统一对 SuperMap iServer 服务进行调配,用户并不需要知道具体提供服务的 GIS 服务器。使用集群可以使 SuperMap iServer 提供的 GIS 服务在高并发、高性能等方面有很大提升,也可以整合 GIS 服务器资源,提升系统的容错能力和并发性能。

举例:SuperMap iServer 的分布式切图模块作为集群技术的典型应用,实现了地图的分布式切图、分布式存储管理等功能。


一、集群概述

集群体系中包含以下角色,不同的角色通过各自不同的操作来构建整个集群体系:

  • 集群父节点:即集群服务器,是集群服务的提供者,负责监听和协调子节点的服务器,可以通过“使用集群->使用本地集群服务”实现对外提供 GIS 服务,通过”配置集群“查看和控制子节点的加入;
  • 集群子节点:如图3-1标识2,执行父节点分配的任务,可以通过加入集群向集群父节点报告,成为集群体系的一员;
  • GIS 应用服务器:客户端直接访问的 GIS 服务器,如果是由集群父节点兼任,则使用方式同集群父节点,如果是独立的服务器(如图3-2 GIS 应用*),则可以通过“使用集群->使用其他集群服务实现对外提供 GIS 服务。
    SuperMap iServer 普通集群配置及使用_第1张图片

上述角色可以概括一下,具体到某台机器。比如对于本机来说,我可以是:

  • GIS 应用服务器,可以使用其他集群服务;
  • 集群父节点,可以配置集群和查看我的集群子节点;
  • 集群子节点,可以加入集群,向父节点报告。

集群子节点加入集群后,会每隔2秒向父节点报告一次,集群父节点收到报告后,认为该子节点是可用的子节点,且该子节点会出现在集群服务器的“集群成员列表”中。当客户端或 GIS 应用服务器向集群服务器(父节点)发送请求时,集群服务器会基于负载均衡原则将任务分配给各个集群成员(子节点),如下图所示。集群成员响应请求并将响应的结果返回给集群服务器,集群服务器再将收到的响应结果返回给发送请求的客户端或 GIS 应用服务器。例如客户端浏览地图时,收到的地图切片可能来自不同的集群成员,而不是仅来自客户端请求的集群服务器。在以下情况集群服务器会判定集群成员超时,不会给该成员分配任务或将已分配的请求任务转发给其他节点处理:

  • 如果集群成员超过2秒未向集群服务器报告,即连接超时,则集群服务器会认为该成员无效;
  • 如果集群成员响应请求的时间超过2分钟,即响应超时,则集群服务器会认为该成员响应超时,会将请求转发给其他节点处理。

二、集群的使用

GIS 应用服务器是为客户端直接提供 GIS 服务的服务端,通过使用集群可以提升 GIS 服务的性能和负载量,集群系统将以本机 GIS 应用服务器为出口向客户端提供高性能的服务。
在 SuperMap iServer 的集群操作界面如图:
SuperMap iServer 普通集群配置及使用_第2张图片
GIS 应用服务器使用集群的方式有以下两种:

  • 使用本地集群服务,如图3-1所示,即集群的父节点作为 GIS 应用服务器对外提供服务,客户端可以直接访问集群父节点;
  • 使用其他集群服务,如图3-2所示,即 GIS 应用服务器本身不属于集群服务的一部分,它的作用是接收客户端请求,并转发给集群服务器父节点处理,本身只起到转发请求的作用。
    SuperMap iServer 普通集群配置及使用_第3张图片

三、集群的配置

多个 GIS 服务器可以通过搭建集群,提高性能。默认情况下,SuperMap iServer 的 GIS 服务器均开启集群功能,随时可以接受子节点加入。如图 3-1 所示,标识 2 直接加入标识 1 的集群服务,就形成了一个简单的集群。值得说明的是,标识 1 支持多个 GIS 服务器的加入,同时标识 1 还可以加入别的集群(此时,就构成了多层集群)。
集群配置的操作界面如图:
SuperMap iServer 普通集群配置及使用_第4张图片

安全控制

集群父节点,其主要职责是监听和协调子节点执行相关任务,可以对整个集群系统进行安全控制,可以查看集群成员(子节点)并决定是否允许其加入集群。集群父节点可以“开启”安全控制,来控制子节点的加入。
如果父节点开启了安全控制,需设置对应的安全密钥,此时:

  1. 子节点在加入集群时,必须经过父节点“允许”才能加入;
  2. 子节点加入集群时就必须输入正确的 Token。

开启安全控制后,在节点列表中,点击子节点对应的“允许加入集群”按钮,可以允许子节点加入集群,点击“禁止加入集群”按钮可以禁止子节点加入集群。
:配置集群时,本机节点会自动加入集群服务器中。

集群类型

  • 服务集群:用以提升 GIS服务的并发和性能,典型应用:分布式切图服务。
  • 分布式计算集群:用以执行分布式分析服务。

节点列表

在配置集群页面可以查看集群的节点列表,包括“普通节点”和“受控节点”。受控节点是指以受控的方式加入集群的子节点。点击“查看服务详情”可以看到在当前集群体系中当前子节点所提供的服务实例。

:如果已经开启安全控制,则需要执行“允许加入集群”操作让子节点完成加入集群。

集群转发配置

为提升集群系统请求转发的效率,iServer默认采用异步转发的方式来处理请求。您无须修改任何配置,即可在集群系统中实现请求的异步转发。
如果您需要通过自定义配置进一步提升集群系统请求转发的效率,您可以手动修改集群主节点系统配置文件(iserver-system.xml)的配置项,具体为:“clustering”中的“clusterRequestClientSetting”子项。

四、受控集群

SuperMap iServer 支持子节点以受控的方式加入集群。这种集群配置方式简单快速,适合于子节点空闲的情况,子节点本身不需要对外提供服务而可以接受父节点的控制。子节点一旦开启了受控集群,就要受到父节点的完全控制,其自身原有的服务实例和服务管理器都将被禁用,父节点的服务实例和数据将同步到子节点。其中,服务组件集合对应的服务实例、处理自动化服务将被过滤不同步到子节点。
子节点作为受控模式的集群成员,仅用于处理父节点转发的请求。 如下图所示,在一个集群体系中,可以同时存在受控的子节点(标识2)和非受控子节点(标识3) 。
SuperMap iServer 普通集群配置及使用_第5张图片

你可能感兴趣的:(云GIS,iServer,集群使用,集群配置)