Search code examples
geoservermbtilesvector-tilesopenmaptilesmaptiler

How to get Geoserver to correctly serve up MB Vector Tiles


I have geoserver (v2.18.1) serving up MapBox Vector tiles. It works nicely and the data is coming back and rendering on the client. I have the MBTiles plugin installed.

The issue I have is that the protobuf responses containing the date with each tile are very large in size. Some are over 2mb - even with GZip compression turned on. When rendering in OpenLayers the application starts to bog down - not to mention the bandwidth usage.

I've noticed that other online services are (i.e. https://api.maptiler.com) have tile sizes under 200kb. That's a massive difference.

Is there some way to configure Geoserver to filter the data returned to the client based on the zoom level? For example, exclude place names at low zoom levels. I've tried applying an MB Style document but that didn't seem to work.

Is it possible to do a server side filter on the Vector data before returning it to the client?


Solution

  • Yes, the SLD file associated to your layer is the server-side filter. While the symbolizes are not used, the rules are driving what you see at the zoom levels.