分布式切片库 |
如果您希望将地图瓦片进行分布式存储,那么在创建预缓存任务之前,需要先创建分布式切片库。目前支持的分布式切片库的类型有 FastDFS 、MongoDB、OTS。
登录服务管理器(http://<server>:<port>/iserver/manager),点击进入“分布式切片库”即可看到已有的分布式切片库列表。在切片存储列表中展示了当前切图主节点中,所有已创建分布式切片库,点击存储 ID,可查看详细的存储配置信息以及生成的切片集列表。
点击“添加分布式切片库”按钮,可以看到添加新的分布式切片库时,需要创建一个“存储 ID”作为其唯一标识,需要选择切片库类型,如 FastDFS、MongoDB、OTS。不同的切片库创建时需要的参数是不同的,在创建前请确认分布式存储服务器可用。
FastDFS 是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。FastDFS 服务端有两个角色:跟踪器(Tracker)和存储节点(Storage)。FastDHT 是一个基于键值对(Key Value Pair)的高效的分布式 Hash 系统,用于保存切图结果文件名与存储文件名之间的映射关系。有关 FastDFS 的安装与配置,请参考: FastDFS 的安装与配置。
如上所述,添加 FastDFS 存储时,需要设置存储服务器,即 FDFS Trackers 和 FDHT Groups 服务器的地址。
参数名称 |
说明 |
FDFS Trackers |
跟踪器(Tracker)起负载均衡的作用,负责调度服务器,跟踪器由一台或多台服务器组成,所有服务器都是对等的,可以根据服务器的压力情况增加或减少,其服务器可以随时增加或下线而不会影响在线服务。 添加跟踪器中服务器的格式为:<server>:<port>,例如:192.168.110.10:22122。 具体的 IP 和端口请参见:配置 FastDFS,即 tracker.conf 中 bind_addr 和 port 的配置。 |
FDHT Groups | FastDHT 由一个或多个组(Group)组成,每个组由一台或多台服务器组成,同组服务器上存储相同的数据,组内各个服务器对等,数据同步只在同组的服务器之间进行。 添加 Group 中服务器的格式为:<server>:<port>,例如:192.168.110.10:11411。 具体的端口请参见:配置 FastDHT,即 fdhtd.conf 中 bind_addr 和 port 的配置。 |
您也可以通过修改系统配置文件来添加 FastDFS 存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | < storages > < storage > < id >f12</ id > < tileSourceInfo class = "com.supermap.services.tilesource.FastDFSTileSourceInfo" > < type >FastDFS</ type > < fdfsTrackers > < string >192.168.112.12:22122</ string > </ fdfsTrackers > < fdhtGroups > < string-array > < string >192.168.112.12:11411</ string > </ string-array > </ fdhtGroups > </ tileSourceInfo > </ storage > </ storages > |
MongoDB 是一个基于分布式文件存储的数据库,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。有关 MongoDB 的详细介绍和安装使用方式,请参考:MongoDB 的安装与配置。
添加 MongoDB 服务时,您需要配置以下参数:
您也可以通过修改系统配置文件来添加 MongoDB 存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:
1 2 3 4 5 6 7 8 9 10 11 12 13 | < storage > < id >m27</ id > < tileSourceInfo class = "com.supermap.services.tilesource.MongoDBTilesourceInfo" > < type >MongoDB</ type > < serverAdresses > < string >localhost:27017</ string > </ serverAdresses > < database >smtiles</ database > < username >iserver</ username > < password >iserver</ password > </ tileSourceInfo > </ storage > |
其中,<database>、<username>以及<password> 是可选参数。
OTS是构建在阿里云飞天分布式系统上的NoSQL存储服务,提供海量结构化数据的存储和实时访问。
添加OTS服务时,您需要配置以下参数:
您也可以通过修改系统配置文件来添加 OTS存储。具体操作时,在 iserver-system.xml 中添加如下配置信息:
1 2 3 4 5 6 7 8 9 10 11 | < storage > < id >OTS1</ id > < tileSourceInfo class = "com.supermap.services.tilesource.OTSTileSourceInfo" > < type >OTS</ type > < instanceName >tileStore</ instanceName > < nodeName >cn-hangzhou</ nodeName > < fromPublic >true</ fromPublic > < accessKeyId >accessKeyId</ accessKeyId > < accessKeySecret >accessKeySecret</ accessKeySecret > </ tileSourceInfo > </ storage > |
注:请在<accessKeyId>、<accessKeySecret>中填入您实际获取的AccessKey信息。