2013-11-16 1 views
1

Я использую twemproxy для sharding. В файле nutcracker.yml я разместил всех мастеров. Затем я сделал несколько подчиненных этих мастеров. Я использую redis-sentinel для наблюдения за всеми мастерами. Redis-sentinel отлично справляется. Когда один из мастеров спускается, его подчиненный становится хозяином. Поскольку twemproxy не обновляется новым мастером, он пингует старый мастер. Есть ли способ обновления master в файле nutcracker.yml. Я использую Redis с Scala Play Framework.Как заменить мастер в nutcracker.yml, когда он завершает работу (twemproxy, redis)?

ответ

3

redis-twemproxy-agent - https://github.com/Stono/redis-twemproxy-agent может быть возможным решением.

Из README.md, говорится:

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. 
+0

Я использую Jedis Client для подключения к Redis. И я использую язык Scala для своего приложения. Помогает ли redis-twemproxy-agent? –

0

попробовать Redis-прил (Redis + twemproxy + сторожевой развернуть/авто-отказоустойчивый/монитор/мигрировать/качению обновление):

https://github.com/idning/redis-mgr