Martin Tile Server
2026年11月13日 09:15

GISBox是一站式三维GIS数据编辑、转换、发布平台,支持OSGB/GEOTIFF/RVT等多种GIS格式编辑,转换为3DTiles/Terrain等并发布。

简介

Martin Tile Server 也就是常说的 Martin,是由 MapLibre 社区主导、用 Rust 语言开发的开源高性能轻量矢量瓦片服务器,专为高流量地图访问场景做了深度性能优化,单机可实现每秒数千次瓦片请求的处理能力。它既支持从大型 PostGIS 数据库中实时动态生成矢量瓦片,也能直接读取本地或远程的 PMTiles、MBTiles 格式文件对外提供瓦片服务,还可兼容 GeoJSON、GeoParquet 等更多地理数据格式,同时支持将多个不同类型的瓦片数据源动态合并为统一的对外服务端点。除了核心瓦片服务能力之外,它还内置了地图样式托管、动态生成精灵图标与字体字形的辅助功能,附带的命令行工具集可完成批量瓦片导出、MBTiles 文件校验与增量更新等操作,开箱即用且跨平台部署门槛很低,非常适合搭建离线内网地图服务、实时地理信息可视化系统,是替代 TileServer GL 这类 Node.js 栈方案的高性能选型之一。

文件结构

Martin Tile Server的文件结构主要分为以下几类:

  1. 主程序可执行文件:解压后得到单文件可执行程序,Windows下为martin.exe,Linux/macOS下为martin,无需额外安装依赖即可直接运行。
  2. 配置文件目录:通常存放martin.toml或YAML格式配置文件,定义服务监听地址、数据源路径、工作进程数等核心参数。
  3. 地理数据目录:集中存放MBTiles、PMTiles、GeoParquet等瓦片与地理数据文件,服务启动时可自动扫描加载。
  4. 运行辅助目录:包含日志存储目录、启停控制脚本,Docker部署场景下还会挂载环境变量.env文件与容器映射目录。
  5. 内置资源目录:托管地图样式、动态生成的精灵图标、字体字形资源,无需额外部署静态资源服务。

优点

  1. 极致性能表现:基于Rust语言开发,无GC开销且内存安全,单机可支撑每秒数千甚至上万次瓦片请求,高并发场景下CPU与内存占用极低,处理百万级矢量要素时内存仅约50MB。
  2. 数据源兼容性强:同时支持PostGIS动态实时生成瓦片、本地/远程PMTiles、MBTiles文件读取,还可通过DuckDB实验性支持GeoParquet等新兴地理数据格式,单服务可混合承载实时动态数据与静态底图。
  3. 部署门槛极低:提供单文件无依赖可执行程序,无需安装Node.js、Java等额外运行环境,一条命令即可启动,Docker镜像体积小巧,跨平台开箱即用。
  4. 生态与功能完整:由MapLibre官方主导维护,社区迭代活跃,内置PostGIS表自动发现、地图样式托管、动态生成精灵图标与字体字形等能力,完全覆盖MapLibre前端的全链路需求。
  5. 附带实用工具集:自带martin cp等命令行工具,可批量将任意数据源的瓦片导出为MBTiles文件,也支持瓦片文件校验、增量更新等运维操作,无需额外引入第三方工具链。

缺点

  1. 数据库适配局限:原生仅深度适配PostgreSQL+PostGIS生态,对MongoDB、MySQL等其他非PostGIS地理数据库的支持能力较弱,无法直接对接这类数据源生成动态瓦片。
  2. 可视化配置缺失:没有内置图形化操作界面,所有配置与管理操作都需通过修改TOML/YAML配置文件或命令行完成,对非技术背景的运维人员不够友好。
  3. Windows平台支持有限:官方对Windows系统的适配优化不足,生产环境下的稳定性与性能表现不如Linux平台,官方更推荐在Linux服务器上部署运行。
  4. 部分功能尚不稳定:GeoParquet、COG栅格瓦片等新增特性目前仍处于实验性阶段,API接口与运行逻辑可能随版本迭代发生变动,不建议直接在核心生产场景中使用。
  5. 栅格服务能力薄弱:核心定位聚焦于矢量瓦片服务,原生栅格瓦片处理能力远不如GeoServer这类传统全功能地图服务器,复杂栅格分析与WMS等标准OGC协议支持不足。

应用场景

Martin Tile Server 凭借高并发低资源占用的特性,非常适合实时交通物流追踪这类数据高频更新的场景,依托PostGIS动态生成瓦片的能力,能让最新的车辆轨迹、物流点位数据即时在地图上呈现,无需等待全量瓦片预生成。它也广泛应用于离线野外作业、专网政务地图这类完全断网的环境,通过自带的martin-cp工具可将全量地理数据批量导出为MBTiles离线包,单文件部署后就能在无公网的环境下提供完整的矢量地图服务,完全摆脱商业地图API的依赖。同时它也适配全国级基础底图分发、多源地理数据融合展示的高流量场景,结合PMTiles云原生格式与CDN缓存,可支撑数十万级并发连接的地图访问请求,还能将PostGIS动态数据、历史静态底图、远程托管瓦片等多个不同来源的服务合并为统一的对外端点,大幅简化WebGIS、智慧城市可视化平台的前端对接流程,是高负载生产环境下替代传统瓦片服务器的轻量化高性能选型。

示例图

1. 基于Martin实现MapboxGL自定义底图。

Snipaste_2026-11-13_09-34-12.jpg

文件打开方式

1. MapboxGL在网页上展示矢量瓦片数据。

Snipaste_2026-11-13_09-36-39.jpg

相关 GIS 服务

Web 地图渲染服务 OGC API

切片地图服务

HERE Technologies

Azure Maps API

参考资料

  1. https://juejin.cn/post/7436968373352857641
  2. https://martin.maplibre.org/
  3. https://blog.csdn.net/weixin_38670190/article/details/132204029