当前位置: 首页 > article >正文

redis常用部署架构之redis分片集群。

redis  3.x版本后开始支持

作用:

1.提升数据读写速度

2..提升可用性

分片集群就是将业务服务器产生的数据储存在不同的机器上。

redis分片集群的架构

如上图所示,会将数据分散存储到不同的服务器上,相比于之前来说,redis要处理所有缓存数据的读写,而现在数据是分散到不同的服务器上,显然相比于之前来说读写速度会有很大的提升。

redis的分片集群还有一个特性就是会随机两两配对构建成一对主从复制关系。

在分片集群中每份数据都是独立的关系,并不是将一份完整的数据拆分成多份,而这每份数据之间可能有关系,可能没关系。

redis分片集群的读写原理

在redis分片集群中存储的数据都是以键值对的形式存储到redis分片集群中。

缓存的目的是为了加速

数据缓存最重要的是当寻找数据的时候,数据的命中率。【即能不能在最少的时间内找到需要的数据。】

在计算机中对数据进行哈希运算,不管是什么数据都可以被哈希算法运算为一个数字,而这个数字的大小总是固定在0-2的32次方之间。

在redis分片集群中一共会产生16384哈希槽,【而这16384个哈希槽会被平均分给每个redis节点。每个redis负责不同槽位的读写。】

如上图所示,在redis分片集群中对于数据的存储都是对这个key进行哈希运算,随后拿运算结果,除以16384取余,拿到余数,判断这个余数是由哪个redis节点负责的,将这个数据储存到哪个redis节点上。

哈希运算对象仅键(Key),与值(Value)无关。

redis分片集群的部署

1.分别在两台服务器上安装redis

2.创建实例目录,拷贝配置文件

3.编辑实例的配置文件

如上图所示,这是启动redis软件的集群功能,将来可以使用这个redis实例去部署集群。

如上图所示,这是集群的配置文件。将redis实例添加到集群中的时候还需要有一个相应的配置文件。

如上图所示,这是集群之间相互通信的超时时间单位是毫秒。

如上图所示,我们将7001的配置文件拷贝给7002的实例一份,随后将这个拷贝文件中的7001全部替换成7002.

4.启动实例

如上图所示,多启动的端口就是多个redis实例之间进行相互通信的。

5.创建分片集群

如上图所示,先去创建对应的目录,随后复制对应的配置文件,随后用for循环和sed工具去修改配置文件中的内容,

如上图所示,此时这个另外一台机器上的三个redis实例已经启动成功,

如上图所示,这里的1表示每个主服务器配置1个从服务器,当然每个主服务器也可以配置多个从服务器。

6.连接集群,测试数据读写


http://www.kler.cn/a/612010.html

相关文章:

  • 双塔模型2之如何选择正确的正负样本
  • iOS 在collectionView顶部无缝插入数据效果
  • Pydantic Schema生成指南:自定义JSON Schema
  • Kubernetes网络插件选择与区别之Calico网络插件详解 上集
  • 《Python实战进阶》第30集:Scikit-learn 入门:分类与回归模型
  • flutter-第1章-配置环境
  • 我的世界模组开发进阶教程——生物群系
  • python深度评测:5大中文长度计算方案终极对决(你的选择可能一直是错的)
  • 【区块链 + 文化版权】慧形AI 知识分身 | FISCO BCOS 应用案例
  • ubuntu20.04安装nvidia-docker(解决有 Release 文件。 N: 无法安全地用该源进行更新,所以默认禁用该源错误)
  • 树莓派(4B)使用教程-小白之路(NO.1)
  • Rust从入门到精通之精通篇:25.过程宏高级应用
  • MySQL 设置允许远程连接完整指南:安全与效率并重
  • 《Python实战进阶》No37: 强化学习入门:Q-Learning 与 DQN-加餐版1 Q-Learning算法可视化
  • 【前端vue】理解VUE前端框架中src下的api文件夹与views文件夹
  • 蓝桥杯(电子类)嵌入式第十一届设计与开发科目模拟试题
  • AI辅助下基于ArcGIS Pro的SWAT模型全流程高效建模实践与深度进阶应用
  • 面试题:RocketMQ 如何保证消息的顺序性
  • 04 单目标定实战示例
  • HarmonyOS之深入解析如何根据url下载pdf文件并且在本地显示和预览