clusterConfig


URI

<managerRoot uri>/clusterusage[.<format>]

支持的方法

GETPUTHEAD

父资源

managerRoot

介绍

clusterConfig 为使用集群资源,通过 clusterConfig 资源您既可以查看集群配置使用信息,也可以修改集群的配置使用状态。如果为使用集群状态,则您还可以修改是使用本机集群服务,还是使用其他集群服务。

使用本地集群服务,即集群的父节点作为 GIS 应用服务器对外提供服务,客户端可以直接访问集群父节点。

      使用其他集群服务,即 GIS 应用服务器本身不属于集群服务的一部分,它的作用是接收客户端请求,并转发给集群服务器父节点处理,本身只起到转发请求的作用。  

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiserver 是服务器名。

http://supermapiserver:8090/iserver/manager/clusterusage.rjson

GET 请求

获取当前集群的配置使用信息。

响应结构

对 clusterConfig 资源执行 GET 请求,返回的是当前集群的配置使用信息,表述结构如下:

字段 类型 说明
DEFAULT_CONNECT_TIMEOUT int 默认链接超时时间,20000 毫秒。
DEFAULT_READ_TIMEOUT int 默认读取超时时间,120000 毫秒。
address String 集群服务地址。
connectTimeout int 使用集群服务时子节点的连接超时时间。单位为毫秒,默认为 20000 毫秒。
dataSyncInterval Integer 数据文件更新时间间隔。单位为分钟,默认为30分钟。
enabled boolean 是否使用集群,默认为 true。
excludeFormats String 不向受控子节点部署/同步的数据格式,以逗号分隔,例如: "md5,txt,rmvb"。
includeFormats String 要向受控子节点部署/同步的数据格式,以逗号分隔,例如: "smwu,udd,png"。
localAddress String 使用集群的 iServer 自身地址,需要可以被集群服务访问。
readTimeout int 使用集群时读取子节点返回的请求内容的超出时间。单位为毫秒,默认为 120000 毫秒。
reporters List<ReporterSetting> 报告器信息列表,即应用程序向集群服务报告的配置信息列表。
status Status 集群状态,只有当 enabled 的值为 true 时,该值才有意义。
token String 使用集群时的认证信息。
useLocalCluster Boolean 是否使用本机集群服务,只有当 enabled 的值为 true 时,该值才有意义。

响应示例

对 clusterConfig 资源执行 GET 请求( http://localhost:8090/iserver/manager/clusterusage.rjson ),返回的 rjson 格式表述如下:

{

    "DEFAULT_CONNECT_TIMEOUT": 20000,

    "DEFAULT_READ_TIMEOUT": 120000,

    "address": "http://localhost:8090/iserver/services/cluster",

    "connectTimeout": 2000,

    "dataSyncInterval": null,

    "enabled": true,

    "excludeFormats": null,

    "includeFormats": null,

    "localAddress": null,

    "readTimeout": 120000,

    "reporters": [{

        "address": "http://anotherclusterservice:8090/iserver/services/cluster",

        "enabled": false,

        "isTileWorker": false,

        "iserverId": "d7c64eb1ea1a4f11983082488ab9fba9",

        "localAddress": null,

        "token": ""

    }],

    "status": "OK",

    "token": null,

    "useLocalCluster": true

}

PUT 请求

修改集群的配置使用状态。如果为使用集群状态,则您还可以修改是使用本机集群服务,还是使用其他集群服务。

请求参数

发送请求时,需要在请求体中包含如下参数:

名称 类型 含义
address String 【必选参数】
集群服务地址。
connectTimeout int 使用集群服务时子节点的连接超时时间。单位为毫秒,默认为 20000 毫秒。
dataSyncInterval Integer 数据文件更新时间间隔。单位为分钟,默认为30分钟。该字段在此请求中无意义。
enabled boolean 是否使用集群,默认为 true。
excludeFormats String 不向受控子节点部署/同步的数据格式,以逗号分隔,例如: "md5,txt,rmvb"。该字段在此请求中无意义。
includeFormats String 要向受控子节点部署/同步的数据格式,以逗号分隔,例如: "smwu,udd,png"。该字段在此请求中无意义。
localAddress String 使用集群的 iServer 自身地址,需要可以被集群服务访问。
readTimeout int 使用集群时读取子节点返回的请求内容的超出时间。单位为毫秒,默认为 120000 毫秒。
reporters List<ReporterSetting> 报告器信息列表,即应用程序向集群服务报告的配置信息列表。该字段在此请求中无意义。
status Status 集群状态,只有当 enabled 的值为 true 时该值才有意义。
token String 使用集群时的认证信息。
useLocalCluster Boolean 是否使用本机集群服务,只有当 enabled 的值为 true 时,该值才有意义。

响应结构

执行 PUT 请求后,返回的资源表述结构如下:

字段 类型 说明

succeed

boolean 是否成功修改集群使用状态。

响应示例

对 clusterConfig 资源执行 PUT 请求( http://localhost:8090/iserver/manager/clusterusage.rjson ), 可以修改集群的配置使用状态,修改为使用其他集群服务时,发送的请求体如下:

{

    "readTimeout": 120000,

    "enabled": true,

    "status": "OK",

    "excludeFormats": null,

    "localAddress": null,

    "connectTimeout": 2000,

    "includeFormats": null,

    "address": "http://localhost:8090/iserver/services/cluster",

    "token": "",

    "useLocalCluster": false,

    "reporters": [

        {

            "enabled": false,

            "iserverId": "d7c64eb1ea1a4f11983082488ab9fba9",

            "isTileWorker": false,

            "token": "",

            "address": "http://anotherclusterservice:8090/iserver/services/cluster",

            "localAddress": null

        }

    ],

    "dataSyncInterval": null

}

则返回的 rjson 格式响应结果如下:

{

    "succeed": true

}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 clusterConfig 资源是否存在,或者客户端是否有权限访问 clusterConfige 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 clusterConfig 资源是否支持<format>格式的表述。

请参见