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

漳州博大网站建设微信页面转wordpress

漳州博大网站建设,微信页面转wordpress,网站开发就业前景,品网站建设公司排名redis的分片集群模式 1 主从哨兵集群的问题和分片集群特点 主从哨兵集群可应对高并发写和高可用性,但是还有2个问题没有解决: (1)海量数据存储 (2)高并发写的问题 使用分片集群可解决,分片集群…

redis的分片集群模式

1 主从哨兵集群的问题和分片集群特点

主从哨兵集群可应对高并发写和高可用性,但是还有2个问题没有解决:
(1)海量数据存储
(2)高并发写的问题
使用分片集群可解决,分片集群的特点:
(1)集群中有多个master,每个master保存不同的数据。(实现海量数据存储)
(2)每个master都可以有多个slave节点。(实现高并发读)
(3)master之间通过ping检测彼此健康状态。(替代主从集群中的哨兵,多个master认为某个master客观下线,可在每个master和自己的slave节点之间进行主从切换,满足高可用性)
(4)客户端请求(redisTemplate)可以访问集群任意节点,最终都会被转发到正确的节点。

在这里插入图片描述

2 搭建redis分片集群

分片集群需要的节点数较多,搭建一个最小的分片集群,包含3个master节点,每个master节点包含一个slave节点。采用一主一从模式,总共3个master和3个slave节点。
可在同一个虚拟机中开启6个redis实例,模拟分片集群。

编写redis.conf文件:
在这里插入图片描述

(1)分别启动6个redis

(2)创建集群

# 分片集群操作相关的命令
redis-cli --cluster help# 创建集群
redis-cli --cluster create --cluster-replicas 1 节点ip:端口号  节点ip2:端口号   ......  节点ip6:端口号

create:创建集群
–cluster-replicas 1:指定集群中每个master的副本个数为1,节点总数(6)除以(1+1)= 3 ,说明maste的数量为3,因此节点列表的前3个就是master节点,其余是slave节点,随机分配到不同的master上。

# 查看集群状态
redis-cli -p 端口号 cluster nodes
## 展示各个节点

在这里插入图片描述

3 分片集群中的散列插槽

散列插槽(设计目的:有利于数据的转移)

redis会把每一个master节点映射到0~16383共16384个插槽(hash slot)上,查看集群信息时就能看到:(每一个master节点都会占用一部分的插槽)。
数据key不是与节点绑定的,而是与插槽绑定。redis会根据key的有效部分计算出插槽值,有以下2种情况:
(1)key中包含“{}”,且“{}”中至少包含1个字符,“{}”中的部分是有效部分
(2)key中不包含“{}”,整个key都是有效部分。

例如:key是num,就会根据num计算;如果是{itcast}num,则根据itcast计算。计算方式是利用CRC16算法得到一个hash值,然后对16384取余(取余的结果始终在0~16383中间),得到的结果就是slot值。

# 使用集群模式  连接redis,set值(-c)
redis-cli -c -p 7001

set a 1的时候 a的计算结果的slot(插槽)等于15495,会自动跳转到存储到这个redis的散列插槽中。
在这里插入图片描述

如何实现将某一类数据都存储到指定的redis的主节点上

这一类数据可以使用相同的有效部分,例如key都以{typeId}为前缀。

4 分片集群中的集群伸缩

集群伸缩:增加和删除集群中节点

向集群中增加一个新的master节点,并向num=10

需求:
将已有的那个redis实例的插槽移动到新增master节点的插槽中,将已有的那个redis实例下线(如:服务器老登)

# 
redis-cli --cluster --help
# 默认是master节点,当然再在后面使用指定是master还是slave以及是谁的slave,添加新的redis实例节点默认是没有插槽值的 (在connected后面的是slot插槽)
redis-cli --cluster add-node 新增节点的ip:端口号 redis分片集群中已有的ip:端口号
# 重新分片 reshard 从其他节点的插槽中移到指定节点的部分插槽值   按照提示一步一步操作  注意填入redis实例的id(可使用cluster nodes查看)
redis-cli --cluster reshard

5 分片集群中的故障转移

其中一个master宕机(可以主动停机)–自动故障转移

# 停机后 该节点断开连接  从节点变为master节点  该节点重启后,变为slave节点
redis-cli -p 端口号 shutdown

手动故障转移(一个redis实例节点服务器老旧需要升级)–数据迁移

将某个slave节点机器替换现在的master节点
在slave节点的机器上执行cluster failover命令

# 可让当前slave节点成为master节点,之前的master节点变为slave节点
cluster failover

6 redisTemplate访问分片集群

(1)引入redis的starter依赖

(2)配置文件中配置redis分片集群的每个节点的地址

在这里插入图片描述

(3)配置主从读写分离

http://www.yayakq.cn/news/956636/

相关文章:

  • 网站设置访问权限企业在线设计网站
  • 太原网站制作价格家政公司管理系统
  • 烟台网站建设首推企汇互联见效付款wordpress 定时采集
  • 深圳全网站建设公司环球资源网发展现状
  • 做投票网站湖北建站方案
  • 泉州百度关键词优化温州哪里有网站优化
  • 做网站网页的公司保定建设局网站
  • 如网站性质为公司 请以企业备案门户网站做
  • 海珠做网站公注册深圳公司流程和费用
  • 网站开发培训流程专业恶意点击软件
  • 网站内容策划方案网页培训
  • 企业门户网站需求文档德国设计网站大全
  • 手机网站qq代码wordpress设置网站关键字
  • 网站页脚景区网站建设方案 费用
  • 网站设计师要求wordpress 电商 插件
  • 网站内页seo查询网站建设 会计科目
  • 新媒体 网站建设 影视重庆做网站做得好的公司
  • 泰安 网站建设公司网络工程师是青春饭吗
  • 有做销售产品的网站微信小程序与网站连接
  • 佛山网站设计案例酒厂网站源码
  • 怎么把网站扒下来wordpress 文章 相册
  • 做网站和开发app有什么不同wordpress 变更中文
  • 网站首页开发设计有什么网站推荐
  • 静态页面网站站标代码写进到静态页面了 怎么不显示呢?挂甲寺网站建设
  • 设计公司网站图公司企业网站维护
  • cydia软件源网站开发企业vi设计的作用与意义
  • 四川网站建设设计公司排名打开qq邮箱进入wordpress
  • 怎么利用网站上的图片营销网站制作需要多少钱
  • 免费视频素材网站昆明抖音推广公司
  • 广州网站建设o2o网站源码多少钱