nodejs Redis Agent which updates TwemProxy (nutcracker) config
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 11 commits ahead of matschaffer:master.
Latest commit 5cff086 Jun 7, 2014

Redis-Twemproxy Agent


A simple nodejs application which will connect to Redis-Sentinel and monitor for the master-change event. It will then update TwemProxy (nutcracker) and restart it.

The basic idea behind it, is so that you have redundancy in your redis shards, when your master dies, a slave is promoted to Master by Redis Sentinel, and then this agent updates your TwemProxy config to point to the new master.

		|					|
	Master1				Master N
Slave1 	SlaveN		Slave 1	Slave N
			Redis Sentinel

A more detailed explanation can be found on an article on my site.


Your master names in Redis-Sentinel (sentinel.conf) should match the names of the master nodes in your twemproxy config. I have included examples of sentinel and twemproxy configs in the conf directory


This originally started as a gist posted on a twemproxy ticket about doing HA redis. It was then created in GitHub at

This fork contains the following changes:

	-	Full yaml parsing of the config file rather than string replacements
	-	Full logging to a specific log file in cli.js
	-	Automatic complete master update upon connection to Redis-Sentinel
	-	An example init.d script, using forever, to run on boot.  Albeit it currently runs as root, haven't got round to securing this yet.