redis-geo

redis geo-ip lokup

npm install redis-geo
4 downloads in the last week
17 downloads in the last month

redis-geo

GeoIp backed by redis. Port of examples provided by Redis in Action. Buy the book!

Module Usage

var redis = require('redis').createClient();
var geoip = require('redis-geo')(redis);

geoip('71.75.248.222', function (err, info) {
  if (err) throw err;
  console.log(info);
});

Example output:

{
  country: 'US',
  state: 'NC',
  city: 'Waxhaw',
  zip: '28173',
  lat: '34.9273',
  lng: '-80.7278',
  metro: '517',
  areacode: '704'
}

Importing Data

First import the block via the csv dump.

$ redis-geo import-blocks /to/to/blocks.csv

Next, import the locations.

$ redis-geo import-locations path/to/locations.csv

Options

$ redis-geo --help

  Usage: redis-geo [options] [command]

  Commands:

    import-blocks <file>   imports the location blocks
    import-locations <file> imports the location details by city
    lookup <ip>            looks up the geo data for the ip

  Options:

    -h, --help                   output usage information
    -V, --version                output the version number
    -p, --port [port]             redis port
    -h, --host [host]            redis host
    -n, --namespace [namespace]  namespace in redis

TODO:

  • hashkey sharding for memory optimizations

License

MIT

npm loves you