有两篇文章不错,可以看下:

1,初步理解redis cluster:https://blog.csdn.net/dc_726/article/details/48552531

2,仔细理解redis cluster的扩容和缩容:https://www.jianshu.com/p/c67041648309

笔记:redis cluster是通过固定分配的方式查找key所在的节点的,hash(key) % 16383,得到的结果是一个整数。

redis会存储:

slotA-slotB => node1

slotC-slotD => node2

slotE-slotF => node3

...

这样固定分配slot-id到对应的node上的。

当扩容时,把之前的slot节点,分配出去一部分。然后把数据也迁移到新的节点上,然后通知cluster新的节点对应了哪些slot,通知成功后完成扩容。

当缩容时,把要删除节点的slot分配到其它节点上,把数据迁移过去,通知cluster 新的slot分配关系已经改变,通知成功后完成缩容。

redis的扩容和缩容时需要手工干预的。OVER!

43 【redis cluster】的更多相关文章

  1. 【Redis数据库】命令学习笔记——发布订阅、事务、脚本、连接等命令汇总

    本篇基于redis 4.0.11版本,学习发布订阅.事务.脚本.连接的相关命令. Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 序号 ...

  2. Jedis使用总结【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】(转)

    前段时间细节的了解了Jedis的使用,Jedis是redis的java版本的客户端实现.本文做个总结,主要分享如下内容: [pipeline][分布式的id生成器][分布式锁[watch][multi ...

  3. 【Data Cluster】真机环境下MySQL数据库集群搭建

    真机环境下MySQL-Cluster搭建文档  摘要:本年伊始阶段,由于实验室对不同数据库性能测试需求,才出现MySQL集群搭建.购置主机,交换机,双绞线等一系列准备工作就绪,也就开始集群搭建.起初笔 ...

  4. 【redis持久化】redis持久化理解

    1.以下内容仅为个人理解和总结,仅供参考,万万不可全盘真信,内容会进行实时改进和修正 2.redis持久化: 参考链接1.https://redis.io/topics/persistence  -- ...

  5. 【Redis安装】部署与基本配置 --基于Mac和Linux

    Redis安装与部署[基于Mac和Linux] 一.Redis简介 基于内存的Key-Value高性能NoSQL数据库 二.Redis下载和解压 进入官网下载最新版的Redis,目前是5.0.0,这个 ...

  6. 【Redis学习】:Windows环境下的Redis安装与配置

    Redis简介 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统. Redis是一个开源的使用ANSI C ...

  7. 【Redis篇】Redis持久化方式AOF和RDB

    一.前述 持久化概念:将数据从掉电易失的内存存放到能够永久存储的设备上. Redis持久化方式RDB(Redis DB)   hdfs:    fsimageAOF(AppendOnlyFile)   ...

  8. 【Redis篇】Redis集群安装与初始

    一.前述   本文将单台节点不同端口模拟集群方式. 二.具体搭建 前提是安装好redis具体可参考http://www.cnblogs.com/LHWorldBlog/p/8463269.html 1 ...

  9. 【Redis篇】初始Redis与Redis安装

    一.前述 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括st ...

随机推荐

  1. 【python接口自动化-requests库】【二】requests库简单使用(入门)

    一.post请求 前面讲了,我们get请求的时候,引入requests的包,然后直接使用get方法,那么post是不是一样的? 1.首先我们先引入requests import requests 2. ...

  2. cordova最小化app插件的使用: cordova-plugin-appminimize

    1. 添加插件:cordova plugin add cordova-plugin-appminimize 2.调用方法: window.plugins.appMinimize.minimize(); ...

  3. VS2015 使用 Visual Studio Emulator For Android 调试无法命中断点的解决办法?

    源解决方案是英文版的,地址:https://dzone.com/articles/fix-for-could-not-connect-to-the-debugger-while-de 问题现象: 1. ...

  4. Deffie-Hellman密钥交换

  5. PythonStudy——高级语言 High-level programming language

    高级语言 高级语言(High-level programming language)相对于机器语言(machine language,是一种指令集的体系.这种指令集,称机器码(machine code ...

  6. webpack 中,importloaders 配置项的含义

    importLoaders:用于配置「css-loader 作用于 @import 的资源之前」有多少个 loader. 0 => no loaders (default); 1 => p ...

  7. 日期date出参入参和timestamp转化

    日期传到form页面,注意MM要大写 由于Date在MySQL没有默认值,没有设置的时候,会自动变成0000-00-00,影响渲染到Java类中,所以需要在程序中设置默认值 date转timestam ...

  8. [visual studio]visual studio 2017激活码

    企业版:NJVYC-BMHX2-G77MM-4XJMR-6Q8QF 专业版:KBJFW-NXHK6-W4WJM-CRMQB-G3CDH

  9. Redis和Memcache区别,优缺点对比

    1. Redis和Memcache都是将数据存放在内存中,都是内存数据库.不过memcache还可用于缓存其他东西,例如图片.视频等等. 2.Redis不仅仅支持简单的k/v类型的数据,同时还提供li ...

  10. SpringMVC复习

    第一天 springmvc.xml 一个配置文件,SpringMVC本身就是Spring的子项目,对Spring兼容性很好,不需要做很多配置. 这里只配置一个Controller扫描就可以了,让Spr ...