Radix is a minimalistic Redis client for Go. It is broken up into the following:
redis - A wrapper around a single redis connection. Supports normal commands/response as well as pipelining.
- resp - A utility package for encoding and decoding messages from redis
extra - a sub-package containing added functionality
pool - a simple, automatically expanding/cleaning connection pool.
pubsub - a simple wrapper providing convenient access to Redis Pub/Sub functionality.
sentinel - a client for redis sentinel which acts as a connection pool for a cluster of redis nodes. A sentinel client connects to a sentinel instance and any master redis instances that instance is monitoring. If a master becomes unavailable, the sentinel client will automatically start distributing connections from the slave chosen by the sentinel instance.
cluster - a client for a redis cluster which automatically handles interacting with a redis cluster, transparently handling redirects and pooling. This client keeps a mapping of slots to nodes internally, and automatically keeps it up-to-date.
go get github.com/fzzy/radix/redis
go get -u github.com/stretchr/testify make test
The test action assumes you have a redis server listening on port 6379. It will
adiitionally bring up and tear down redis cluster nodes on ports 7000 and 7001.
You can specify the path to
redis-server to use when setting up cluster like
make REDIS_SERVER=/path/to/redis-server test
Copyright and licensing
Copyright 2013 Juhani Åhman. Unless otherwise noted, the source files are distributed under the MIT License found in the LICENSE file.