Migrate from Tilestache
An important difference between tilegroxy and tilestache is that tilegroxy can only be run as a standalone executable rather than running as a module in another webserver. However tilegroxy, like tilestache, can also be used as a library if you wish to build applications extending it.
Overview
The configuration in tilegroxy is meant to be highly compatible with the configuration of tilestache, however there are significant differences. The tilegroxy configuration supports a variety of options that are not available in tilestache and while we try to keep most parameters optional and have sane and safe defaults, it is highly advised you familiarize yourself with the various options in the configuration reference.
The following are the known incompatibilities with tilestache configurations.
General
-
"Names" are always in all lowercase
-
Configuration keys are case insensitive and have no spaces
-
Tiles are always served in Web Mercator (EPSG:3857). There is no
projectionparameter -
Cache contents are not guaranteed to be transferrable
Unsupported features
- Providers
-
-
Mapnik
-
Vector
-
MBTiles - consider converting the archive to PMTiles and using the pmtiles provider
-
Mapnik Grid
-
Goodies providers
-
- Caches
-
-
LimitedDisk
-
Differences by component
- Layers
-
-
Layers are supplied as a flat array of layer objects with an
idparameter for the URL-safe layer name instead of them being supplied as an Object with the id being a key. -
Most parameters unavailable. Some have an equivalent in the
Clientconfiguration -
The
write cacheparameter is replaced withskipcachewith inverted value -
No
boundsparameter - instead use thefallbackprovider but note it applies on a per-tile level only (not per-pixel) -
No
pixel effectsparameter - instead use theeffectprovider
-
- URL Template provider
-
-
For the most part you should use the Proxy provider instead but URL Template is available for compatibility
-
No
refererparameter - instead specify the referer header via theClientconfiguration -
No
timeoutparameter - instead specify the timeout via theClientconfiguration -
No
source projectionparameter - instead usesrid, which supports 4326 and 3857
-
- Sandwich provider
- Proxy provider
-
-
No
providerparameter -
No
timeoutparameter - instead specify the timeout via theClientconfiguration
-
- Test cache
-
-
It’s recommended but not required to change the
nametononeinstead oftest -
No
verboseparameter - Instead use theLoggingconfiguration to turn on debug logging if needed
-
- Disk cache
-
-
No
umodeparameter - Instead usefilemodewith chmod style octal numerals, e.g."0755" -
No
dirsparameter - Instead uselayout, which offersflatandcoordinate. There is no equivalent to thesafeorquadtilestructures -
No
gzipparameter - Tiles are stored uncompressed -
The
pathparameter must be supplied as a file path, not a URI
-
- Memcached cache
-
-
No
revisionparameter - Put the revision inside the key prefix -
The
key prefixparameter is replaced withkeyprefix -
The
serversarray is now an array of objects containinghostandportinstead of an array of strings with those combined
-
- Redis cache
-
-
Supports a wider variety of configuration options. It’s recommended but not required that you consider utilizing a Cluster or Ring deployment if you previously used a single server.
-
The
key prefixparameter is replaced withkeyprefix
-
- S3 cache
-
-
No
use_locksparameter - Caches are lockless. Identical concurrent requests are coalesced within a single tilegroxy instance instead -
No
reduced_redundancyparameter - Instead use the more flexiblestorageclassparameter with theREDUCED_REDUNDANCYoption -
While supported, it’s recommended you don’t use the
accessandsecretparameters. All standard methods of supplying AWS credentials are supported.
-