Q: Workflow for small-area local tile-server

Hi everybody,

Our purpose is to provide map tiles for a city-district sized area (of a large metropolitan area). We plan to use actual municipality provided maps/data and update OSM data from them. On top of it we will write a PWA (Progressive Web Application) where we provide a e-city-guide like application. As we want special tile rendering and to not put strain on public servers we want to provide the tiles from our server. Being an NGO, we also cannot afford long term monthly payments.

We read many articles/examples in the last days but most of them are based on providing planet/continent/country sized maps and require premium servers to serve and update. We think we will not need that.

Some more info:

  • The maps screen will be the default interface, so when the app runs, map will be shown
  • We would like to render maps with minimal info as the ornaments will be provided by us as layers. But we need to provide multiple sets, a simple/lite map, map with height info (as there are hills) etc.
  • We want to get rid of the data from other, unrelated city parts (just shorelines for example)
  • We would think of a 1-2K users/day max
  • We don’t need to provide continuous updates to the tiles, but we may re-render tiles with versions of the application.

Our current VDS server is 4 core / 8 GB RAM cloud server with dedicated resources which holds around 10 websites (mostly Joomla!), rather low load - normally maxing to %25 CPU/RAM load - except nightly backups. But the output is 100 Mbps. It is a OpenLiteSpeed server, we got rid of bulky Apache a while ago.


  • What is the best workflow?
  • We are thinking of local automated rendering on our powerful Win-10 machines, is it possible?
  • We think of optimizing the result tile images and upload to the server
  • Will the server HW in hand suffice? We can upgrade it for this purpose (we don’t want Apache back). Do we need to have another server dedicated for tile serving?
  • What server-side software is required for this task?
  • … any other pointers …

We might go into a completely wrong direction, thus your input is very much appreciated. Thank you in advance…