Skip to content

System Architecture Diagram

Michael Maurizi edited this page Jun 11, 2015 · 4 revisions

This is a system architecture diagram for OTM2.

Changes from the OTM1 architecture include:

  • Tilecache and Geoserver are no longer used in OTM2.
  • Instead, for generating map tiles and serving them over TMS, there's a custom built otm-tiler project written in Node.js, itself based off of CartoDB's Windshaft. The otm-tiler relies upon both a running Redis server and PostgreSQL.
  • In OTM1, ecosystem services calculations (CO2, stormwater, electricity savings, etc, currently based off of i-Tree Streets) were done in Python/Django. In OTM2, this work has been separated out wholly into the new Go-based, custom built ecobenefits service. The ecobenefits service exposes its data and calculations via a ReST/JSON API that the OTM2 Django app communicates with and consumes. In theory, any project interested in ecosystem services calculations for trees could use the ecobenefits service independently of the other OpenTreeMap components.
  • The Celery task queue communicates with both Redis and Django for caching purposes, and processing large search exports.
Clone this wiki locally