4 ms·
Hello liuliu, there is no race: when all the clients are pointed to write in the new instance, that is a slave, but as all Redis slaves can accept writes, you
by antirez 16y ago
Hello liuliu, there is no race:
when all the clients are pointed to write in the new instance, that is a slave, but as all Redis slaves can accept writes, you are already ok. Then you elect the instance as master just to disconnect the real master without issues.
Redis Cluster is something where we (Redis core team, that is, I and Pieter) can't get help for now, but will need help soon with testing.
- moe 16y agoCount me in, I'm also eagerly waiting for the cluster feature. Have you considered relying on Zookeeper for the gossip heavy-lifting? Yes it's java (ugh) and would add an external dependency (ugh), but it's battle-tested and could perhaps save you from re-inventing such a complex wheel?
- jrockway 16y agoConsidering they won't use a library for the networking, I doubt they are going to add a Java dependency for config management.
- moe 16y agoIt would not be a java dependency but rather a component dependency (you talk to zookeeper over the network). Zookeeper is also not just config management, it's state management. It helps to solve some of the really nasty problems of distributed state, e.g. achieving quorum and dealing with split brain situations. However, it's been a while since I read up on the planned redis-cluster design, so I'm not sure how they are tackling these issues.
- soamv 16y agoSome client A might write to the master, another client B might write to the slave, and other clients will see these updates in a different order depending on which instance they are connected to. Can that happen?