Redis集群学习
Redis3.0版本加入了cluster功能,解决了Redis单点无法横向扩展的问题。
分布式系统要解决的不外乎以下两个问题:
sharding/partition 以提高系统的吞吐率
replication 以提高系统的高可用性
然后因为sharding了,所以就有一个 哈希或者路由 的事情要处理。引入的问题包括:
数据分布方式:取模, 范围映射,一致性哈希, etc.
客户端哈希还是服务端转发路由,如果需要客户端或者任意一个节点都能接受请求进行转发,那么就需要引入集群的概念,让集群中的节点能够互相知道数据的分布情况(相关技术参见下面讨论)
对于没有sharding key的请求(如果系统设计支持),需要有个scatter和gat...