首页 > 其他 > 详细

redis集群

时间:2017-01-08 20:10:02      阅读:186      评论:0      收藏:0      [点我收藏+]

  使用redis集群可以干什么?

1.可以将数据分布式地存储在多个redis节点。

2.部分节点不可用时,仍然可以保证节点的可用性。

 

  redis集群中节点对tcp端口的要求:

1.client与节点之间通信的接口,称为p1

2.节点之间通信的接口,称为p2。p2=p1+10000

 

  redis集群与docker的兼容性:

redis集群不支持端口remapped,为了使docker与redis兼容,需要将docker在host networking mode下工作(--net=host)。

 

  redis集群的分表

redis集群的分表没有使用一致性hash,而是将数据分布在16384个slot中,平均分布在集群中的多个节点。

好处:

  1.增加节点和删除节点只需要将slot在节点间移动即可,移动slot时,无需down机。

redis支持同一个命令的执行中,对属于同一个slot的多个key进行操作,从而保证事务性。

使用hash tag可以保证多个key同属于一个slot

hash tag案例,大括号内的内容相同,两个key在同一个slot中:

1. keyA{foo}

2. keyB{foo}

  redis集群的的主从模式

我们可以为redis的每个node设置slave,某个节点的master挂了,slave可用,则集群仍然可用。若某个节点的主从全部挂掉,那么系统不可用。

 

  redis无法保证数据的强一致性,一些情况下,写入的数据可能会丢失。

redis client的写请求是异步返回的,写入master的数据,在复制到slave前,挂掉,那么数据会丢失。

 

 

 

 

 

 

 

    

 

redis集群

原文:http://www.cnblogs.com/swaggyC/p/6262537.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!