Tile38 is an open source (MIT licensed), in-memory geolocation data store, spatial index, and realtime geofence. It supports a variety of object types including lat/lon points, bounding boxes, XYZ tiles, Geohashes, and GeoJSON.
You can find detailed documentation in the README.
Change Log
Added
- #221: Sqs endpoint (@lennycampino)
- #226: Lua scripting (@rshura)
- #231: Allow setting multiple fields in a single fset command (@rshura)
- #235: Add json library (encode/decode methods) to lua. (@rshura)
- 26d0083: Update vendoring to use golang/dep
- c8ed7ca: Add WHEREIN command (@rshura)
- d817814: Optimized network pipelining
Fixed
- #237: Flush to file periodically (@rshura)
- #241: Point match on interior hole (@genesor)
- 920dc3a: Use atomic ints/bools
- 730502d: Set keepalive default to 300 seconds
- 1084c60: Apply limit on top of cursor (@rshura)
Getting Started
OS X
To get started on OSX run the following in a terminal:
curl -L https://github.com/tidwall/tile38/releases/download/1.10.0/tile38-1.10.0-darwin-amd64.zip -o tile38-1.10.0-darwin-amd64.zip
unzip tile38-1.10.0-darwin-amd64.zip
cd tile38-1.10.0-darwin-amd64
./tile38-server
Linux
To get started on Linux run the following in a terminal:
curl -L https://github.com/tidwall/tile38/releases/download/1.10.0/tile38-1.10.0-linux-amd64.tar.gz -o tile38-1.10.0-linux-amd64.tar.gz
tar xzvf tile38-1.10.0-linux-amd64.tar.gz
cd tile38-1.10.0-linux-amd64
./tile38-server
FreeBSD
To get started on FreeBSD run the following in a terminal:
curl -L https://github.com/tidwall/tile38/releases/download/1.10.0/tile38-1.10.0-freebsd-amd64.tar.gz -o tile38-1.10.0-freebsd-amd64.tar.gz
tar xzvf tile38-1.10.0-freebsd-amd64.tar.gz
cd tile38-1.10.0-freebsd-amd64
./tile38-server
Playing with Tile38
Open another terminal:
./tile38-cli set fleet truck point 33.5 -115.5
./tile38-cli get fleet truck