Tirex

From OpenStreetMap Wiki
Jump to navigation Jump to search
tirex
Author: Geofabrik
License: GNU GPL v2 (free of charge)
Platform: Linux
Status: Active
Version: (2025-07-30)
Language:
English
Website: Tirex
Programming languages: Perl and C++

A suite of programs for running a tile server,

Features
Feature Value
Map Display
Display map yes
Map data
?
Source
?
Rotate map
?
3D view
?
Shows website
?
Shows phone number
?
Shows operation hours
?
Routing
Routing no
Create route manually
?
Calculate route
?
Create route via Waypoints
?
Routing profiles
?
Turn restrictions
?
Calculate route without Internet (Offline routing)
?
Routing providers
?
Avoid traffic
?
Traffic Provider
?
Navigating
Navigate no
Find location
?
Find nearby POIs
?
Navigate to point
?
Navigation with voice / Voice guidance
?
Keep on road
?
Lane guidance
?
Works without GPS
?
Navigate along predefined route
?
Tracking
Make track no
Customizable log interval
?
Track formats
?
Geotagging
?
Fast POI buttons
?
Upload GPX to OSM
?
Monitoring
Monitoring no
Show current track
?
Open existing track
?
Altitude diagram
?
Show POD value
?
Satellite view
?
Show live NMEA data
?
Show speed
?
Send current position
?
Editing
Add POIs no
Edit / Delete POIs no
Add way no
Edit geometries no
Edit arbitrary tags of existing OSM objects no
Edit relations no
View notes no
Create notes no
Edit notes no
Work offline no
Support imagery offset DB no
Upload to OSM no
Rendering
Renderer output formats depends on rendering engine
Accessibility
?

Tirex (pronounced T-Rex) is a suite of programs for running a tile server, it was developed for OpenStreetMap tile servers but can be used for other maps, too.

Tirex is mostly written in Perl, it is Open Source and available from the GitHub.

Tirex performs roughly the same tasks as the well-known renderd, but is much more flexible.

The initial implementation of Tirex was paid by ENAiKOON (http://www.enaikoon.com/) and executed by Geofabrik (http://www.geofabrik.de).

Features

  • Splits queue management and tile rendering into different modules
  • Supports several tile rendering backends
  • Flexible priority queue that can handle thousands of jobs
  • Configurable parallel rendering that make sure your machine doesn't overload and high priority jobs are rendered quickly
  • Nifty status console that lets you see statistics and what your queues and renderers are doing
  • Powerful batch rendering command (tirex-batch) thats allows you to request rendering of tiles on defined zoom levels and bboxes and much more
  • Rendering backend manager that re-starts failed rendering backends
  • Tile rendering and caching in metatiles compatible to mod_tile/renderd system
  • No multi-threading which is notoriously difficult to debug
  • Uses multi-processing to use all the CPUs in your machine
  • Extensive documentation on the OSM wiki and many man pages
  • Most of the system implemented in Perl for flexibility
  • Lots of config options and many little utility scripts to encourage experimentation
  • Lots of unit tests for the Perl library to give you some confidence that it actually works
  • Easy to install because there are several Debian/Ubuntu packages for all parts of the system

Documentation

There are also man pages for all commands.

Tirex front-end servers

  • TileMan : Tile Server and utility that drive Tirex from Nginx high performance, non-blocking IO http derver directory.It support static tile distribution, client IP address detection and clustering features.
  • Tileserver : A nodeJS tileserver for Tirex that is sample implementation of driver.

Reference:

mod_tile and backwards compatibility

Tirex offers no replacement for mod_tile yet but it is planned to have one in the future. At the moment you can simply use the existing mod_tile, unchanged, with Tirex. Tirex uses the same meta tiles and the same directory structure, making it easy to switch from renderd to Tirex. More...

Who is using Tirex?