Redis Cluster搭建高可用Redis服务器集群

STM32低功耗模式下ADC采样抖动的5个隐藏陷阱及解决方案(实测避坑) 本文深入探讨了STM32低功耗模式下ADC采样抖动的5个常见陷阱及解决方案,包括多通道采样电压跃迁、外设开关信号稳定、低功耗模式与ADC时钟同步、输入阻抗失配以及基准电压稳定性问题。通过实测数据和优化代码示例,帮助工程师有效规避ADC采样数据抖动问题,提升物联网设备的测量精度和稳定性。 阅读详情

一、Redis Cluster集群简介

Redis Cluster是Redis官方提供的分布式解决方案,在3.0版本后推出的,有效地解决了Redis分布式的需求,当一个节点挂了可以快速的切换到另一个节点,当遇到单机内存、并发等瓶颈时,可以采用分布式方案要解决问题。

二、集群原理

 

Redis Cluster集群采用了P2P的模式,完全去中心化,Redis把所有的Key分成了16384个slot,每个Redis实例负责其中一部分slot,集群中的所有信息(节点、端口、slot等),都通过节点之间定期的数据交换而更新,Redis客户端可以在任意一个Redis实例发出请求,如果所需数据不在该实例中,通过重定向命令引导客户端访问所需的实例。

如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。

其结构特点:

  1. 所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽。
  2. 节点的fail是通过集群中超过半数的节点检测失效时才生效。
  3. 客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可。
  4. redis-cluster把所有的物理节点映射到[0-16383]slot上(不一定是平均分配),cluster负责维护node<->slot<->value。
  5. Redis集群预分好16384个桶,当需要在Redis集群中放置一个key-value 时,根据CRC16(key) mod 16384的值,决定将一个key放到哪个桶中。

三、集群搭建

要让集群正常工作至少需要3个主节点,一共就需要6个节点,其中3个为主节点,3个为从节点,为了简单在下面在一台机器上演示,演示使用了linux服务器上7000到7005的6个端口。

  1. 下载redis、解压、安装

 
wget http://download.redis.io/releases/redis-3.2.4.tar.gz tar -zxvf redis-3.2.4.tar.gz cd redis-3.2.4/ make && make install 
  1. 将redis-trib.rb复制到/usr/local/bin目录下

 
cd src cp redis-trib.rb /usr/local/bin 
  1. 创建Redis节点并修改配置文件

 
mkdir redis_cluster   cd redis_cluster/ mkdir 7000 7001 7002 7003 7004 7005 cp redis.conf redis_cluster/7000 cp redis.conf redis_cluster/7001 cp redis.conf redis_cluster/7002 cp redis.conf redis_cluster/7003 cp redis.conf redis_cluster/7004 cp redis.conf redis_cluster/7005 

按下面提示修改6个配置文件


 
port 7000 //端口7000,7001,7002...  bind 本机ip //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群 daemonize yes //redis后台运行 pidfile /var/run/redis_7000.pid //pidfile文件对应7000,7001,7002 cluster-enabled yes //开启集群 把注释#去掉 cluster-config-file nodes.conf //集群的配置 配置文件首次启动自动生成 cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置 appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志  dir /root/redis-3.2.4/redis_cluster/7000 //目录,端口7000,7001,7002... ,必须配置,否则无法启动  
  1. 启动6个Redis实例,并且要指定配置文件,这些配置文件分别在各自的子目录下面

 
./src/redis-server redis_cluster/7000/redis.conf ./src/redis-server redis_cluster/7001/redis.conf ./src/redis-server redis_cluster/7002/redis.conf ./src/redis-server redis_cluster/7003/redis.conf ./src/redis-server redis_cluster/7004/redis.conf ./src/redis-server redis_cluster/7005/redis.conf 
  1. 安装ruby

 
yum install ruby yum install -y rubygems gem install redis -v 3.2.2 
  1. 使用redis-trib.rb创建集群

 
cd /usr/local/bin ./redis-trib.rb create --replicas 1 192.168.0.204:7000 192.168.0.204:7001 192.168.0.204:7002 192.168.0.204:7003 192.168.0.204:7004 192.168.0.204:7005 

运行结果如下:

 

Redis Cluster启动成功截图

如果一切顺利,你会看到类似截图上的消息: [OK] All 16384 slots covered, 这说明Redis的Cluster集群环境搭建成功。

简单解释一下这个命令:调用 ruby 命令来进行创建集群,--replicas 1 表示主从节点比例为 1:1,即一个主节点对应一个从节点;然后,默认给我们分配好了每个主节点和对应从节点服务,以及solt的大小,因为在Redis集群中有且仅有16383个solt,默认情况会给我们平均分配,当然你可以指定,后续的增减节点也可以重新分配。

M: 5237fa04bd793832b605d92ceb1d2f493da22e43 为主节点Id

S: b6b696c11bbffa8f9d4e6397ef4d27b0b54fea32 192.168.0.204:7003 replicates 5237fa04bd793832b605d92ceb1d2f493da22e43 从节点下对应主节点Id

目前来看,7000-7002 为主节点,7003-7005 为从节点,并向你确认是否同意这么配置,输入yes后,会开始集群创建。

四、验证集群

  1. 通过Cluster Nodes命令和Cluster Info命令来看看集群效果

 
./redis-cli -c -h 192.168.0.204 -p 7001 cluster info cluster nodes 

运行结果如下:

 

功截图

  1. 在集群上通过增加数据来测试集群效果
  2. 运行结果如下:

 

欢迎工作一到八年的Java工程师朋友们加入Java高级交流:854630135

本群提供免费的学习指导 架构资料 以及免费的解答

不懂得问题都可以在本群提出来 之后还会有直播平台和讲师直接交流噢

华为云Stack交付实战:从工勘到上线的全流程拆解 本文详细拆解华为云Stack交付全流程,从项目启动、工勘、LLD设计到硬件部署和软件安装,提供实战技巧与避坑指南。重点解析华为云Stack交付流程中的关键环节,如标准化工具使用、规范化文档管理和流程化协作,帮助团队高效完成从工勘到上线的复杂项目交付。 阅读详情

相关推荐

重访时间与覆盖分析的stk操作

1.打开stk 2.创建一个新的场景,命名为Test,选择地球为场景星球,若为金星,可在Central Body里选择Venus(金星自转周期慢,自转周期243天,卫星轨道变化不明显)(其中start stop时间可设置长一些) 3.插入一个AreaTarget或者place,以AreaTarget为例 选择Pattern,Add三个点(用法可见前面的博客,有时候编程的代码也可以帮助理解stk的操作) 4.插入Satellite,选择Orbit Wizard(若想设置卫星的六根数也可

weixin_42664107的博客 1万+

Redis的Cluster集群搭建(CentOS7环境,Redis6.0.9)

目录 一、介绍 二、部署Redis的Cluster集群 1、编译完成Redis文件 2、新建准备好6个文件夹 3、拷贝redis执行文件和conf 4、修改redis.conf文件 5、创建启动文件start_all.sh 6、创建停止文件stop_all.sh 7、启动节点 8、创建集群 三、验证集群正常工作 参考文献: 一、介绍 在单机版的Redis中,每个Master之间是没有任何通信的,所以我们一般在Jedis客户端或者Codis这样的代理中做Pre-shardi..

杨小扬的专栏 970

饥荒Mod 开发(二):Mod目录结构

饥荒中的每个Mod 都有一些固定的目录结构,各个目录的放着不同类型的文件。动画,图片,源代码等。我们最好是遵守Mod 开发中的各个目录结构,我用的是WeGame 安装的饥荒游戏,Mod 目录如下,这个目录下保存所有订阅的Mod。

小乖写代码 4632

二叉树专题 之 129. 求根到叶子节点数字之和

题目: 给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径 1->2->3 代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明: 叶子节点是指没有子节点的节点。 解题思路: 方法1:dfs 该题是典型的dfs题目, 从该节点的角度进行实现,设置好循环条件,终止条件即可; 方法2:迭代 int dfs(struct TreeNode *root, int tmp) { // 只考虑该节点需要做的事情

诺坎普的骄傲 345

避开这些坑!STM32H750 IAP升级实战:从Bootloader设计到APP接收的完整避坑指南

本文深入探讨STM32H750 IAP升级的完整避坑指南,从Bootloader设计到APP接收的全流程实践。特别针对QSPI Flash运行限制、SRAM跳转机制和固件校验等核心问题,提供工业级解决方案,帮助开发者提升升级成功率和系统稳定性。

weixin_30471561的博客 275

配电网可靠性评估(一)—最小路法和非序贯蒙特卡洛模拟法的matlab实现

电力系统的可靠性研究是相关领域的热点问题。根据研究对象的不同,又可分为发电系统的可靠性,输电系统的可靠性和配电系统的可靠性。配电网在电力系统中处于最末端的位置,直接和用户相连,一旦出现故障情况,就会在用户侧表现为停电事故。因此对配电网的可靠性评估有着重大意义。......

配电网和matlab的博客 1万+

JAVA ssm b2b2c多用户商城系统源码(三)注册中心集群篇 ...

集群环境搭建 第一步:我们新建两个注册中心工程一个叫eureka_register_service_master另外一个叫eureka_register_service_backup eureka_register_service_master的application.properties配置如下 server.port=7998 eureka.clie...

weixin_34273481的博客 172

Robocup 仿真2D 学习笔记(二) 球队代码编译和上场

环境的一些问题 最近在使用rcssserver 和 rcssmonitor时可能会遇到./configure失败的问题,可以检查一下文件夹是否有makefile文件,如果是编译后的包直接sudo make install,如果还不行,还可以源码下载编译 rcssserver: https://sourceforge.net/projects/sserver/files/rcssserver/...

markchalse的博客 6015

六台机器搭建RedisCluster分布式集群

一、RedisCluster结构二、redis Cluster集群搭建1、修改redis.conf中需要更改的配置bind 改成当前ipcluster-enabled yes  #允许redis集群cluster-config-file nodes-6379.conf  #集群配置文件cluster-node-timeout 15000   #集群中节点允许失联的最大时间15s注:安装redis集...

迟迟 优快云 1万+

uniapp - [微信小程序] 实现点击预览各种文件 pdf文档、视频mp4、mp3音乐、图片图像、word/excel/ppt 等,uniapp小程序文件预览功能(详细示例代码,一键复制开箱即用)

uniapp,uniapp微信小程序,支付宝小程序平台端,uniapp实现文件在线预览,uniapp微信小程序怎么实现预览视频mp4,mp3音乐,图片,office文档,小程序平台如何在线预览word/excel/ppt文档,uniapp实现小程序端的文件查看功能,uniapp小程序端实现pdf文件预览,uniapp纯前端预览PDF、DOC、DOCX、图片、视频,uni-app文档、图片预览查看,uniapp文档预览功能,uniapp小程序端文件预览,uniapp小程序平台纯前端解析word,pdf,xls

✅ 精选推荐文章 1万+

echarts 饼图(加载进度条动画效果)

1、外侧动画细线效果运动“custom”自定义系列中“renderItem”属性来实现,动态修改起始角度和终止角度。2、圆环使用" pie "类型添加两个data值来画百分比圆环,动态修改data中的值。

God's asylum的博客 1633

NoSQL之Redis集群搭建——6台服务器,三台主服务器,三台从服务器

这里写目录标题一、单节点Redis服务器带来的问题二、Redis集群介绍2.1、Redis集群的优势2.2、Redis集群的实现方法2.3、Redis-Cluster数据分片2.4、Redis-Cluster的主从复制模型三、Reids集群实验 一、单节点Redis服务器带来的问题 单点故障 无法处理大量数据并发数据请求 数据丢失一大堆 解决方法:         所以我们需要搭建Redis集群 二、Redis集群介绍 Redis集群是一个提供在多个Redis间

优快云著名博主 1351

热力学仿真软件:Fluent_(8).材料属性设置

在 Fluent 中,材料属性主要包括密度、比热容、导热系数、黏度等物理性质。这些属性在不同的仿真场景中有着不同的作用,例如在流体仿真中,密度和黏度是必不可少的;在传热仿真中,导热系数和比热容是主要考虑的因素。如果所需的材料不在材料库中,或者需要对现有材料进行修改,用户可以自定义材料属性。在主菜单中选择Materials。点击打开材料编辑器。在材料编辑器中,点击Create按钮,输入新的材料名称。选择材料类型(如FluidSolid等)。在属性栏中填写所需的材料属性。

kkchenjj的博客 1495

两台服务器安装redis集群_Redis Cluster搭建高可用Redis服务器集群

一、Redis Cluster集群简介Redis Cluster是Redis官方提供的分布式解决方案,在3.0版本后推出的,有效地解决了Redis分布式的需求,当一个节点挂了可以快速的切换到另一个节点,当遇到单机内存、并发等瓶颈时,可以采用分布式方案要解决问题。二、集群原理Redis Cluster架构图 Redis Cluster集群采用了P2P的模式,完全去中心化,Redis把所有的Key分成...

weixin_39662142的博客 214

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

服务器缓存架构部署:Redis Cluster 集群搭建,实现数据分片与高可用

Redis Cluster 是 Redis 的分布式解决方案,通过数据分片(sharding)将数据分散到多个节点,同时借助主从复制(replication)和故障转移(failover)机制实现高可用性。Redis Cluster 使用 16384 个哈希槽,数据分片基于键的哈希值计算:$H(key) = \text{CRC16}(key) \mod 16384$,分配到不同主节点。通过以上步骤,您已成功搭建 Redis Cluster 集群,实现数据分片(提升并发能力)和高可用(确保服务连续性)。

2501_93877264的博客 410

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

4台服务器集群搭建_Redis Cluster高可用集群搭建

在前面两篇文章中,分别介绍了Redis的主从复制和哨兵模式,这篇文章我们来介绍一下Redis官方推荐的集群部署方案Redis Cluster,以及它的动态扩容、缩容过程。Redis Cluster集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。它不需要Sentinel哨兵也能完成节点移除和故障转移的功能,并且它的性能和高可用性均优于哨兵模式,集群配置也非常简...

weixin_39806288的博客 881

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Redis Cluster 搭建高可用Redis服务器集群

redis-cluster提供的功能: 节点自动发现主从选举,切换,集群容错集群管理在线分片ASK转向/MOVED转向机制 架构细节说明: (1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽. (2)节点的fail是通过集群中超过半数的master节点检测失效时才生效. (3)客户端与redis节点直连,不需要中间proxy层.客户

XWJ 3315

4台服务器集群搭建_Redis Cluster搭建高可用Redis服务器集群

一、Redis Cluster集群简介 Redis Cluster是Redis官方提供的分布式解决方案,在3.0版本后推出的,有效地解决了Redis分布式的需求,当一个节点挂了可以快速的切换到另一个节点,当遇到单机内存、并发等瓶颈时,可以采用分布式方案要解决问题。二、集群原理 Redis Cluster架构图Redis Cluster集群采用了P2P的模式,完全去中心化,Redis把所有的Key分...

weixin_39758392的博客 306

两台服务器安装redis集群_快速搭建高可用RedisCluster主从模式集群的填坑之路

推荐学习Redis让我凉在美团一面,摸爬滚打3个月,二战逆袭成功斩获Offer 缓存架构技术:Redis+MongDB,阿里P7面试必跳的坑 Redis Cluster主从模式原理redis cluster 为了保证数据的高可用性,加入了主从模式,一个主节点对应一个或多个从节点,主节点提供数据存取,从节点则是从主节点拉取数据。备份,当这个主节点挂掉后,就会有这个从节点选取一个来充当主节点,从而保证...

weixin_42527160的博客 625

两台服务器安装redis集群_Redis集群搭建及测试

Redis集群搭建及测试Redis有三种模式,前两种有点点问题,高可用做的不是那么好,目前来讲,最后一种Cluster模式算是最完美的,本文将模拟搭建这种模式的集群搭建过程,废话不多说,我要搭建成如下图所示的样子(灵魂画手,将就看):说明:一般来讲,生产环境的redis集群都是在不同机房的不同服务器上的,目的就是一个机房发生诸如掉电,火灾,断网等等问题时,依旧能够做到高可用,本文模拟3台服务器搭建...

weixin_30572707的博客 1202

Redis6搭建高可用的多主多从集群

Redis6搭建多主多从的高可用集群,步骤超详细

XiaoHH的博客 1420
上一篇: Spring实战拆书--SpringBean
下一篇: SpringCloud学习笔记(1)——Eureka
javaQQ群 866865133
博客等级 码龄8年 59粉丝 309原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值