nutcracker - Fast, light-weight proxy for memcached and Redis
nutcracker, also known as twemproxy (pronounced
"two-em-proxy"), is a fast and lightweight proxy for the memcached
and Redis protocols.
It was primarily built to reduce the connection count on backend
caching servers, but it has a number of features, such as:
- •
- Maintains persistent server connections to backend servers.
- •
- Enables pipelining of requests and responses.
- •
- Supports multiple server pools simultaneously.
- •
- Shard data automatically across multiple servers.
- •
- Supports multiple hashing modes including consistent hashing and
distribution.
- •
- High-availability by disabling nodes on failures.
- •
- Observability through stats exposed on stats monitoring port.
- -h, --help
- Show usage information and exit.
- -V, --version
- Show version and exit.
- -t,
--test-conf
- Test configuration for syntax errors and exit.
- -D,
--describe-stats
- Print stats description and exit.
- -v,
--verbose=N
- Set logging level to N. (default: 5, min: 0, max: 11)
- -o,
--output=filename
- Set logging file to filename.
- -c,
--conf-file=filename
- Set configuration file to filename.
- -s,
--stats-port=port
- Set stats monitoring port to port. (default: 22222)
- -a,
--stats-addr=address
- Set stats monitoring IP to address. (default: 0.0.0.0)
- -i,
--stats-interval=interval
- Set stats aggregation interval in msec to interval. (default: 30000
msec)
- -m,
--mbuf-size=size
- Set size of mbuf chunk in bytes to size. (default: 16384
bytes)
- -d,
--daemonize
- Run as a daemon.
- -p,
--pid-file=filename
- Set pid file to filename.
nutcracker was written by Twitter, Inc.