Skip to content

#2.16 内网iportal配置文件

历史原因:

线上online的外挂文件(cdtest)

online产品包(2021.4月不在产生)

iportal产品包

内网调试环境 iserver-debug

内网打包环境 distribution

说明:

外挂文件是k8s中volume卷宿主机目录挂载到online-portal镜像容器内目录

挂载的文件是项目启动需要的配置文件

##其他外挂文件

online:

icloud-sharedDatas.xml mysql数据库sharedata_test,自己维护

icloud-sharedDatas-sqlite.xml 上面的sqlite数据库,实际没有用

shiroCustomUrls.ini 自己维护

portal(distribution/WEB-INF_iPortal):

需要与portal的打包文件对比,也可和portal产品包对比,同时设置online需要的参数

iportal-ehcache.xml 需要内网同步或portal的产品包比较,自己维护,现有差异

iportal-monitor.xml 需要与portal比较,自己维护,数据库改为自己的

iportal-storage.xml 自己维护,存储方式:portal是File文件存储,我们是OSS存储

iportal-structureddata.xml 需要与portal比较, 自己维护,数据库改为自己的

iserver-log4j.properties 需要与portal比较

urlrewrite.xml 需要与portal一致

web.xml 需要与portal对比 ,现有差异

portal调试:

iserver-datastores.xml 与iserver-debug下对比,现略有差异

iserver-rest-appContext.xml 与iserver-debug下对比,现完全一致

iserver-rest-resources.xml 与iserver-debug下对比,现完全一致

iserver:

iserver-dataflow.xml 在iserver产品包有 ,完全不一致

##打包文件

在构建时,源码distribution下的文件同步

IPortalWebHandler.xml 需要与portal同步,以前已做过同步

extendManagerResources.xml 自己维护,与portal无关,打包时新增进iportal-all-olcustom

ManagerConfigAppContext.xml 需要与portal同步,打包时新增进iportal-all-olcustom

cdtest和以前的不同:

iportal.xml

ipotal-monitor.xnl

iportal-storage.xml

iserver-log4j.properties

iserver-system.xml

shiro.ini

##外挂文件(online管理)

需要维护,完全由online管理

###iportalWebHandler.properties

IPortalWebHandler.xml的属性配置文件

注意:在distribution/online/WEB-INF_online_iportal下iportalWebHandler.properties需要维护修改信息,用于内网调试,并同步更新在测试/生产环境的外挂文件

###shiro.ini

尽管内网调试环境iserver-debug下也存在一份shiro.ini,但是online对shiro.ini完全实现对cas登录系统的一套的配置,完全由online管理

###shiroCustomUrls.ini

配合shiro.ini一起配置

icloud-sharedDatas.xml

桌面插件

是我们online-portal项目下sites-develop模块使用,IcloudWebHandler.java使用

handlers.xml(**)

如果放在该目录下,会优先读取;没有则会读取handlers_iportal.xml

目的是新增 extendWebHandler和iCloudWebHandler ,但是iCloudWebHandler 被注释了

更新:与handlers_iportal.xml保持同步

##外挂文件(iportal配置文件)

需要维护管理,与portal保持同步(需要同步的可能极低)

iportal的在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm

1645079465428

###iportal-storage.xml

用户用户上传数据文件的存储配置信息,包括 FTP 服务器存储配置等

内网代码iportal模块下StorageManager.java

1645066488356

iportal-monitor.xml

1645579374509

用于监控数据库与服务器节点配置信息,包括用于监控数据存储的数据库配置、添加的 iServer 服务器节点信息、云原生 iServer 的微服务节点配置信息等

portal产品包自带,内网代码没有,初始化iportal产品包,会新增nodes节点,如果设置默认默认sqlite数据库,会在WEB-INFO/iportaldata下生成monitor.db,

注意:online没有用过监控数据库

内网代码DBStructureUpgrader.java(数据库生成器)的saveMonitorNodesConfigToBD() 方法,每次项目重启会删掉之前的数据库,重新读取nodes节点,并存入数据库iportal的minitor_node_info表

并使用Apacha common.io2.0提供了监听文件变化的功能 ,文件修改会同步到数据库

iportal-ehcache.xml

用于iPortal 代理服务访问权限信息缓存共享配置信息,默认保存在本地,无需配置,当使用 iPortal 高可用方案时,需配置

缓存方式,默认ehcache,读取iportal-ehcache.xml配置文件

内网代码iportal模块下EhcacheCacheImpl.java

iportal-structureddata.xml

在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm

用于 针对以 CSV、Excel、GeoJSON 格式存储的结构化数据,SuperMap iPortal 提供了数据上传、导入数据到 PostgreSQL 数据库、获取字段统计信息、获取数据的 mvt 瓦片的能力。当前,MapStudio WebAPP 提供了对结构化数据能力的支持,在使用之前,iPortal 管理员需配置结构化数据依赖的 PostgreSQL 数据库的连接信息。

1645081445171

内网代码也没有改配置文件;在portal产品包中出现。

内网代码iportal-structureddata模块在2020/9/3新增

1645084945751

urlrewrite.xml

iportal的前端是放在tomcat中需要配置,而online是独立部署,通过nginx转发,所以在k8s环境中没有,可以考虑删掉

用于配置路径导航

项目启动后,会自动更新到最新文件内容:

项目启动类AppServer.java,如果是Portal类型,会把/distribution/WEB-INF_iPortal下的urlrewrite.xml替换挂载目录下的urlrewrite.xml

###web.xml

portal添加的过滤器

项目启动类AppServer.java,如果是Portal类型,会把/distribution/WEB-INF_iPortal下的web.xml替换挂载目录下的web.xml

配置有urlrewrite.xml相关的urlrewrite过滤器

###iserver-log4j.properties

日志打印配置,尽管后面升级到log4j2,依然适配log4j配置

————————————————————————————————————————————————

###iserver-system.xml(**)

在线文档:http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm

该文件会自动同步更新

与内网/distribution/WEB-INF_iPortal下的iserver-system.xml同步对比

注意:

itest环境对postpaid_storagesize.log额外新增

###iportal.xml(**)

ol定制

dataSourceConnectionPoolInfo标签:iportal数据库连接池设置改为mysql连接

uploadSetting标签:用户上传数据容量上限,单位:MB,iportal为2048,改为500

shareSetting标签: true改为fasle

mapsSetting标签: true改为fasle

serviceProxy标签:

rootUrlPostfix:<rootUrlPostfix>proxy</rootUrlPostfix> portalproxy改为proxy

port:<port>1115</port>  8195改为1115

新增:    <proxyServerRootUrl>https://cdtest.supermapol.com</proxyServerRootUrl>  

httpConnPoolInfo:

	maxTotal:<maxTotal>20</maxTotal> 100改为20

	defaultMaxPerRoute:<defaultMaxPerRoute>2</defaultMaxPerRoute>  10改为2

enableAccessStatistics:<enableAccessStatistics>false</enableAccessStatistics> true改为fasle

cacheConfig:<ehcacheConfigPath>./iportalol_config/iportal-ehcache.xml</ehcacheConfigPath>

customDirectorySetting标签:

<allowCustomDirectory>{"APP":false,"DATA":false,"SERVICE":false,"MAP":false,"SCENE":false,"INSIGHTS":false}</allowCustomDirectory>

改为:

http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iPortal/index.htm

mapViewerSetting标签:

修改:

<displayCoords>false</displayCoords>  
<displayDataLayers>true</displayDataLayers> 

##更新记录

外挂文件(iportal配置文件) 中自2017起没有更新,2022/2再次更新

iportal-storage.xml 新增

<cache name="iportalCache_ProxyService" maxElementsInMemory="1000000"
	overflowToDisk="true" eternal="false"
	timeToLiveSeconds="0" timeToIdleSeconds="1800"
	maxEntriesLocalDisk="0" diskSpoolBufferSizeMB="20"
	transactionalMode="off">
</cache>

iportal-monitor.xml 修改

根据提交记录,修改 标签内的内容

iserver-log4j.properties 完全替换最新版文件

web.xml

以前还是2018/11/15版,现在同步过来,

设置为Online,其他与portal一致

————————————————————————————————————————

urlrewrite.xml (去掉)

online的web-ui独立部署,不需要

————————————————————————————————————

以下是iserver的配置,iportal不需要:

iserver-rest-appContext.xml(去掉)

distribution下IPSE修改配置文件说明

iportal产品包已经去掉了,distribution/WEB-INF_iPortal 在日志中 2021/8/13

iserver-rest-resources.xml(去掉)

在iserver里有, 可以删掉

iserver-datastores.xml(去掉)

在iserver产品里有都没有;2017年的,给iserver-debug调试提供测试数据的;不需要,去掉

iserver-dataflow.xml(去掉)

在iserver里有, 可以删掉

——————————————————————————————————————

iserver-security.db-journal(去掉)

莫名生成了个临时文件,删掉

icloud-sharedDatas-sqlite.xml(去掉)

默认的sqlite配置,已有mysql的配置文件;不需要这个

一些临时文件删掉

————————————————————————————————————————

iserver-security.db (去掉)

配置mysql,不需要sqllite

iserver-services.db(去掉)

portal产品没有

—————————————————————————————————————————

更新步骤:

1.删除文件

2.修改文件

主站、itest、cdtest都一样,把我改好的替换:

iportal-ehcache.xml 直接替换

iserver-log4j.properties 直接替换

web.xml

iportal-monitor.xml 不能直接替换,只替换recordDSCPInfo 标签里内容

打包流程

iportal-all-olcustom 对 iportal-all 做了修改,排除了某些类添加了某些jar包内的配置文件

online-iportal-all online的portal-extends项目下的功能都在这个jar

online产品包 2021年4月已不再生成(ftp://ftp.iserver..com下的online目录)

内网dev/distribution/online/WEB-INF_online_iportal 内会覆盖 配置目录