I am currently trying to set up a Mapping-Service for serving OSM-Mapnik Tiles. In my project we want to use the Mapnik-Layer as a BaseLayer for our GI-Application. I am quite new to Mapnik (only used a public Mapnik-Service as a BaseLayer in OL so far) and i am now struggling with the decision about a good service architecture for my use case. Maybe somebody could give me a hint.

Currently from my point of view i have to decide between two possible service architectures:

1.) In the first solution i serve mapnik tiles via mod_tile. The OSM data lies in a PostGIS database and is updated regularly. Mod_tile in combination with rendered does than the rendering and tiling of the OSM data and serves the tiles via tileserver interface. This data could than be integrated in an OL-Application via OpenLayer.Layer.OSM.

2.) In the second possible service architecture the OSM data again lies in a PostGIS database and is updated regularly. But the data is now served via a wms interface (are there any good solutions for this?). The wms interface would then be cached by a separate mapping cache. After that the maps could be used in the OL-Application via wms or wmts interface.

From my initial point of view, the second solution would better fit in my existent architecture, where i already use a mapserver which is cached by a mapcache. Also if using wms and osm layers together in Openlayers, i always get some troublesome behavior of the map extent, where the mapnik tileset define the map extent. The problem is here, that the mapnik map extent is always quite bigger than the actual visible map extent. This also speaks for a wms / cache solution, where the behavior is from my point of view a bit more like i expect it.

On the other hand i am new to the mapnik world and so i am not sure if this solution does better fit to the osm data and idea. So what is your opinion and experience? What is are benefits of the first architecture compared to the second one? What are good software tools (in a debian environment) for publishing osm / mapnik data via wms interface?

I hope i make my point clear and some people could share there experience with me.

1 Answer 1


So basically you refer if a WMS or TMS is a better interface for your OSM map service?

Usually the TileMapService is the standard solution for OSM, as it fits better to the needs of usual endusers (parallel loading, fast displaying, ...). See also http://www.switch2osm.org This solution offers you also the most experience+tools from the osm community: http://help.osm.org

A WMS might be suitable for usual GIS-users, if they don't explore the map, but need it to work with certain areas in their workflow. There are several servers that you can use as rendering/server frontent http://wiki.openstreetmap.org/wiki/WMS#Server_Software

All in all, it depends on your usecase (behaviour of clients, map update-cycles, offered map coverage, ...) if a WMS or TMS is a better solution. Personally I would recommend a TMS because of better existing toolchain and maybe reproject it as WMS using http://wiki.openstreetmap.org/wiki/MapProxy

  • Thanks for your reply. Maybe the question is to use WMS or TMS, but in either ways the WMS would be cached. That mean i would first publish the OSM data via WMS and than cache this service via mapcache. With mod_tile the solution would be, to first publish them via TMS and than maybe encapsulate the service behind a WMS (mapproxy). Also could mapcache give me the opportunity to support wms / wmts / tms. The question is, what are the drawbacks when i don't use mod_tile. For example is the dynamic updating of osm tile not so good? Or is a mod_tile tms faster than a tms on mapcache base?
    – arwesley27
    Nov 13, 2013 at 16:41
  • I'm def. not an expert in OSM map delivery, so call me wrong. There the question is, if you want to render ondemand or if you like to cache. Your infos say, that you like to cache anyway, so I would rely on the mod_tile frontend+renderd tile rerendering scheduler+mapnik. My idea is just to use well-established solutions, where you can get support :) I can't say anythink about benchmarks, as they are usually just benchmarking OSM data import or the rendering itself, but I don't know any paper about comparing tile delivery.
    – Mapper
    Nov 13, 2013 at 17:14
  • The official documentation of ArcGis tells that the second (cache data, then use wmts) solution is better (faster) when there are a lot of connections to your map. But there is not benchmarks (i don't know about them. So the difference maybe insignificant)
    – AmShegar
    Dec 11, 2013 at 11:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.