globalSettings


URI

<managerRoot_uri>/globalsettings[.<format>]

支持的方法

GETPUTHEAD

父资源

managerRoot

介绍

全局属性配置。globalSettings 资源包含了全局属性的配置信息,如服务设置、服务配置信息存储、临时资源存储设置。通过 GET 操作可以获取当前全局属性的配置信息,通过 PUT 操作可更新全局属性的配置。在 iServer 页面进行全局属性配置请详见全局属性设置

支持的方法:

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

资源层次

HTTP 请求方法

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

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

GET 请求

获取全局设置的信息。

请求参数

响应结构

通过对 globalSettings 执行GET请求,响应参数如下:

字段 类型 说明
serviceStorage ServiceStorageInfo 服务配置存储信息
mqInfo MQInfo 消息中间件配置
repositorySetting RepositorySetting 临时资源存储设置信息
properties Map<String, String> 服务设置信息

其中临时资源存储的各返回参数含义如下:

临时资源存储类型 字段 类型 说明
Encache maxElementsPerGroupInMemory int 每个分组,最多可在内存中保存的元素个数,默认值为 200 MB,如不设置表示不启用内存缓存
diskExpiryThreadIntervalSeconds long 检测保存在磁盘中的缓存过期的后台线程运行间隔时间, 默认是 2 分钟,即 2*60 秒
name String 内存缓存的名称
maxBytesOnHeap String 整个仓库最大占用的内存大小;当该字段与 maxElementsPerGroupInMemory 字段都不为 null ,优先使用 maxBytesOnHeap
diskStorePath String 磁盘存储路径,默认为 java.io.tmpdir\\tmpResources
maxBytesLocalDisk String 每个 Cache 最大的占用磁盘空间,默认为 10 GB
type RepositoryType 临时资源缓存的类型
persistenceStrategy String 持久化策略,可选值:none, localtempswap 分别表示不持久化以及持久化到临时目录,并且在重启虚拟机后失效,默认为 localtempswap
diskSpoolBufferSizeMB int 回写到磁盘时的内存缓冲区大小 ,单位 30 MB
memoryStoreEvictionPolicy String 内存存储释放策略,支持三种策略,LRU,LFU,FIFO,默认为 LRU
Redis password String 密码
port int 服务端口号
host String 主机地址
type RepositoryType 临时资源缓存的类型
username String 用户名
MongoDB hoursOfExpireAfter int 存储在 MongoDB 数据库中的临时资源失效时间
password String 密码
port int 服务端口号
host String 主机地址
type RepositoryType 临时资源缓存的类型
username String 用户名
dbName String 数据库名称
HSQLDB DEFAULT_PORT int 默认端口
startServer boolean 是否启用服务
outputpath String 输出路径
DEFAULT_HOST String 默认主机地址
Caffeine maximumSize int 最多可缓存的对象数量
xpireAfterAccess double 缓存实体被访问(读或者写)后的过期时间,单位为小时,默认为不过期
type RepositoryType 临时资源缓存的类型
PostgreSQL cacheSize int 缓存个数
password String 密码
port int 服务端口号
host String 主机地址
type RepositoryType 临时资源缓存的类型
username String 用户名
dbName String 数据库名称

响应示例

对 globalSettings 资源:http://supermapiserver:8090/iserver/manager/globalsettings.rjson 执行 GET 请求,返回的全局设置信息如下:

{

    "serviceStorage": {

        "connInfo": {

            "password": "SuperMap",

            "minPoolSize": "5",

            "driverClass": "oracle.jdbc.driver.OracleDriver",

            "jdbcUrl": "jdbc:oracle:thin:@192.168.17.219:1521/orcl",

            "maxWait": "3000",

            "dbType": "ORACLE",

            "maxIdleTime": "600",

            "maxPoolSize": "30",

            "initialPoolSize": "5",

            "username": "SuperMap"

        },

        "metaTableName": "iserver_V1_METAINFOS",

        "type": "ORACLE",

        "version": null,

        "tableName": "iserver_V1_SERVICES"

    },

     "mqInfo": {

        "config": null,

        "enabled": false,

        "mqType": null

    },

    "repositorySetting": {

        "maxElementsPerGroupInMemory": 0,

        "diskExpiryThreadIntervalSeconds": 120,

        "name": "smcache",

        "maxBytesOnHeap": "200m",

        "diskStorePath": "java.io.tmpdir\\tmpResources",

        "maxBytesLocalDisk": "10g",

        "type": "Ehcache",

        "persistenceStrategy": "localtempswap",

        "diskSpoolBufferSizeMB": 30,

        "memoryStoreEvictionPolicy": "LRU"

    },

    "properties": {

        "realspaceSecurityEnabled": "true",

        "deniedFiles": "",

        "outputPath": "./output",

        "envCheckEnabled": "true",

        "checkDatasourceConnectionInterval": "30",

        "outputSite": "http://{ip}:{port}/{contextPath}/output/",

        "restartWhenCrash": "true",

        "refreshDatasource": "false",

        "realspaceCacheAccessKey": "-116 -104 -55 -34 126 55 17 101 -71 90 -24 -17 -115 80 -56 -17"

    }

}

PUT 请求

更新全局设置的信息。

请求参数

名称 类型 含义
repositorySetting RepositorySetting 临时资源存储设置信息
Encache参数说明:
 
mqInfo MQInfo 消息中间件配置
serviceStorage ServiceStorageInfo 服务存储配置信息
properties Map<String, String> 一般全局属性设置信息

响应结构

通过对 globalSettings 执行 PUT 请求,响应参数如下:

 

字段 类型 说明
succeed Boolean 更新全局设置信息是否成功

响应示例

对 globalSettings 资源 http://localhost:8090/iserver/manager/GlobalSettings.rjson 执行 PUT 请求,传递请求体如下:

{

    "repositorySetting": {

        "maxBytesOnHeap": "200m",

        "maxBytesLocalDisk": "10g",

        "diskStorePath": "java.io.tmpdir\\tmpResources",

        "type": "Ehcache"

    },

    "properties": {

        "realspaceSecurityEnabled": "true",

        "deniedFiles": "",

        "outputPath": "./output",

        "envCheckEnabled": "true",

        "checkDatasourceConnectionInterval": "30",

        "outputSite": "http://{ip}:{port}/{contextPath}/output/",

        "restartWhenCrash": "true",

        "refreshDatasource": "false",

        "realspaceCacheAccessKey": "-116 -104 -55 -34 126 55 17 101 -71 90 -24 -17 -115 80 -56 -17"

    },

    "serviceStorage": {

        "type": "ORACLE",

        "connInfo": {

            "password": "SuperMap",

            "minPoolSize": "5",

            "driverClass": "oracle.jdbc.driver.OracleDriver",

            "jdbcUrl": "jdbc:oracle:thin:@192.168.17.219:1521/orcl",

            "maxWait": "3000",

            "dbType": "ORACLE",

            "maxIdleTime": "600",

            "maxPoolSize": "30",

            "initialPoolSize": "5",

            "username": "scott"

        },

        "tableName": "SuperMap_V1_SERVICES",

        "metaTableName": "SuperMap_V1_METAINFOS"

    }

}

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

{“succeed”:"True"}

HEAD 请求

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

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

请参见