当前位置: 首页 > news >正文 视频网站建设技术方案书WordPress如何更改文章链接 news 2025/10/25 5:33:23 视频网站建设技术方案书,WordPress如何更改文章链接,wordpress拼团插件,今天中美关系最新消息【Redis】Redis分片集群 文章目录【Redis】Redis分片集群1. 搭建分片集群1.1 分片集群结构1.2 搭建分片集群1.2.1 集群结构1.2.2 准备实例和配置1.2.3 启动1.2.4 创建集群1.2.5 测试2. 散列插槽2.1 总结3. 集群伸缩4. 故障转移4.1 数据迁移5. RedisTemplate访问分片集群1. 搭建…【Redis】Redis分片集群 文章目录【Redis】Redis分片集群1. 搭建分片集群1.1 分片集群结构1.2 搭建分片集群1.2.1 集群结构1.2.2 准备实例和配置1.2.3 启动1.2.4 创建集群1.2.5 测试2. 散列插槽2.1 总结3. 集群伸缩4. 故障转移4.1 数据迁移5. RedisTemplate访问分片集群1. 搭建分片集群 1.1 分片集群结构 主从和哨兵可以解决高可用、高并发读的问题。但是依然有两个问题没有解决 海量数据存储问题高并发写的问题 使用分片集群可以解决上述问题分片集群特征 集群中有多个master每个master保存不同数据每个master都可以有多个slave节点master之间通过ping监测彼此健康状态客户端请求可以访问集群任意节点最终都会被转发到正确节点 1.2 搭建分片集群 1.2.1 集群结构 分片集群需要的节点数量较多这里我们搭建一个最小的分片集群包含3个master节点每个master包含一个slave节点结构如下 这里我们会在同一台虚拟机中开启6个redis实例模拟分片集群信息如下 IPPORT角色192.168.150.1017001master192.168.150.1017002master192.168.150.1017003master192.168.150.1018001slave192.168.150.1018002slave192.168.150.1018003slave1.2.2 准备实例和配置 删除之前的7001、7002、7003这几个目录重新创建出7001、7002、7003、8001、8002、8003目录 # 进入/tmp目录 cd /tmp # 删除旧的避免配置干扰 rm -rf 7001 7002 7003 # 创建目录 mkdir 7001 7002 7003 8001 8002 8003在/tmp下准备一个新的redis.conf文件内容如下 port 6379 # 开启集群功能 cluster-enabled yes # 集群的配置文件名称不需要我们创建由redis自己维护 cluster-config-file /tmp/6379/nodes.conf # 节点心跳失败的超时时间 cluster-node-timeout 5000 # 持久化文件存放目录 dir /tmp/6379 # 绑定地址 bind 0.0.0.0 # 让redis后台运行 daemonize yes # 注册的实例ip replica-announce-ip 192.168.150.101 # 保护模式 protected-mode no # 数据库数量 databases 1 # 日志 logfile /tmp/6379/run.log将这个文件拷贝到每个目录下 # 进入/tmp目录 cd /tmp # 执行拷贝 echo 7001 7002 7003 8001 8002 8003 | xargs -t -n 1 cp redis.conf修改每个目录下的redis.conf将其中的6379修改为与所在目录一致 # 进入/tmp目录 cd /tmp # 修改配置文件 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t sed -i s/6379/{}/g {}/redis.conf1.2.3 启动 因为已经配置了后台启动模式所以可以直接启动服务 # 进入/tmp目录 cd /tmp # 一键启动所有服务 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t redis-server {}/redis.conf通过ps查看状态 ps -ef | grep redis发现服务都已经正常启动 如果要关闭所有进程可以执行命令 ps -ef | grep redis | awk {print $2} | xargs kill或者推荐这种方式 printf %s\n 7001 7002 7003 8001 8002 8003 | xargs -I{} -t redis-cli -p {} shutdown1.2.4 创建集群 虽然服务启动了但是目前每个服务之间都是独立的没有任何关联。 我们需要执行命令来创建集群在Redis5.0之前创建集群比较麻烦5.0之后集群管理命令都集成到了redis-cli中。 1Redis5.0之前 Redis5.0之前集群命令都是用redis安装包下的src/redis-trib.rb来实现的。因为redis-trib.rb是有ruby语言编写的所以需要安装ruby环境。 # 安装依赖 yum -y install zlib ruby rubygems gem install redis然后通过命令来管理集群 # 进入redis的src目录 cd /tmp/redis-6.2.4/src # 创建集群 ./redis-trib.rb create --replicas 1 192.168.150.101:7001 192.168.150.101:7002 192.168.150.101:7003 192.168.150.101:8001 192.168.150.101:8002 192.168.150.101:80032Redis5.0以后 我们使用的是Redis6.2.4版本集群管理以及集成到了redis-cli中格式如下 redis-cli --cluster create --cluster-replicas 1 192.168.150.101:7001 192.168.150.101:7002 192.168.150.101:7003 192.168.150.101:8001 192.168.150.101:8002 192.168.150.101:8003命令说明 redis-cli --cluster或者./redis-trib.rb代表集群操作命令create代表是创建集群--replicas 1或者--cluster-replicas 1 指定集群中每个master的副本个数为1此时节点总数 ÷ (replicas 1) 得到的就是master的数量。因此节点列表中的前n个就是master其它节点都是slave节点随机分配到不同master 运行后的样子 这里输入yes则集群开始创建 通过命令可以查看集群状态 redis-cli -p 7001 cluster nodes1.2.5 测试 尝试连接7001节点存储一个数据 # 连接 redis-cli -p 7001 # 存储数据 set num 123 # 读取数据 get num # 再次存储 set a 1结果悲剧了 集群操作时需要给redis-cli加上-c参数才可以(表示集群模式) redis-cli -c -p 7001这次可以了 2. 散列插槽 Redis会把每一个master节点映射到0~16383共16384个插槽hash slot上查看集群信息时就能看到 数据key不是与节点绑定而是与插槽绑定。redis会根据key的有效部分计算插槽值分两种情况 key中包含{}且“{}”中至少包含1个字符“{}”中的部分是有效部分key中不包含“{}”整个key都是有效部分 例如key是num那么就根据num计算如果是{itcast}num则根据itcast计算。计算方式是利用CRC16算法得到一个hash值然后对16384取余得到的结果就是slot值。 注一个插槽并不代表一个key一个插槽可以存储多个key。 2.1 总结 Redis如何判断某个key应该在哪个实例 将16384个插槽分配到不同的实例。根据key的有效部分计算哈希值对16384取余。余数作为插槽寻找插槽所在实例即可。 如何将同一类数据固定的保存在同一个Redis实例中 这一类数据使用相同的有效部分例如key都以{typeId}为前缀。 3. 集群伸缩 redis-cli --cluster提供了很多操作集群的命令可以通过下面方式查看 比如添加节点的命令 4. 故障转移 当集群中有一个master宕机会发生什么呢 首先是该实例与其它实例失去连接然后是疑似宕机 最后是确定下线自动提升一个slave为新的master 4.1 数据迁移 利用cluster failover命令可以手动让集群中的某个master宕机切换到执行cluster failover命令的这个slave节点实现无感知的数据迁移。其流程如下 手动的Failover支持三种不同模式 缺省默认的流程如图1~6步force省略了对offset的一致性校验takeover直接执行第5步忽略数据一致性忽略master状态和其他master的意见 5. RedisTemplate访问分片集群 RedisTemplate底层同样基于lettuce实现了分片集群的支持而使用的步骤与哨兵模式基本一致 引入redis的starter依赖配置分片集群地址配置读写分离 1)引依赖 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-redis/artifactId /dependency2配置 spring:redis:cluster:nodes: # 指定分片集群的每一个节点信息- 192.168.150.101:7001- 192.168.150.101:7002- 192.168.150.101:7003 - 192.168.150.101:8001- 192.168.150.101:8002- 192.168.150.101:80033配置读写分离 //配置读写分离 Bean public LettuceClientConfigurationBuilderCustomizer clientConfigurationBuilderCustomizer() {return clientConfigurationBuilder - clientConfigurationBuilder.readFrom(ReadFrom.REPLICA_PREFERRED); } 文章转载自: http://www.morning.nrfqd.cn.gov.cn.nrfqd.cn http://www.morning.rmyt.cn.gov.cn.rmyt.cn http://www.morning.zxzgr.cn.gov.cn.zxzgr.cn http://www.morning.yfnhg.cn.gov.cn.yfnhg.cn http://www.morning.prhqn.cn.gov.cn.prhqn.cn http://www.morning.ntqnt.cn.gov.cn.ntqnt.cn http://www.morning.yhywx.cn.gov.cn.yhywx.cn http://www.morning.lmdkn.cn.gov.cn.lmdkn.cn http://www.morning.kbkcl.cn.gov.cn.kbkcl.cn http://www.morning.wskn.cn.gov.cn.wskn.cn http://www.morning.cbndj.cn.gov.cn.cbndj.cn http://www.morning.nwcgj.cn.gov.cn.nwcgj.cn http://www.morning.zympx.cn.gov.cn.zympx.cn http://www.morning.nffwl.cn.gov.cn.nffwl.cn http://www.morning.yrhpg.cn.gov.cn.yrhpg.cn http://www.morning.dfygx.cn.gov.cn.dfygx.cn http://www.morning.wqrk.cn.gov.cn.wqrk.cn http://www.morning.qqxmj.cn.gov.cn.qqxmj.cn http://www.morning.yhpq.cn.gov.cn.yhpq.cn http://www.morning.zgztn.cn.gov.cn.zgztn.cn http://www.morning.ccphj.cn.gov.cn.ccphj.cn http://www.morning.qhfdl.cn.gov.cn.qhfdl.cn http://www.morning.nkhdt.cn.gov.cn.nkhdt.cn http://www.morning.zrdqz.cn.gov.cn.zrdqz.cn http://www.morning.tsmxh.cn.gov.cn.tsmxh.cn http://www.morning.0small.cn.gov.cn.0small.cn http://www.morning.ctqbc.cn.gov.cn.ctqbc.cn http://www.morning.lmbm.cn.gov.cn.lmbm.cn http://www.morning.neletea.com.gov.cn.neletea.com http://www.morning.rgqnt.cn.gov.cn.rgqnt.cn http://www.morning.grcfn.cn.gov.cn.grcfn.cn http://www.morning.gcrlb.cn.gov.cn.gcrlb.cn http://www.morning.qmbtn.cn.gov.cn.qmbtn.cn http://www.morning.jtmrx.cn.gov.cn.jtmrx.cn http://www.morning.pwppk.cn.gov.cn.pwppk.cn http://www.morning.qphdp.cn.gov.cn.qphdp.cn http://www.morning.bpmns.cn.gov.cn.bpmns.cn http://www.morning.nktgj.cn.gov.cn.nktgj.cn http://www.morning.hfnbr.cn.gov.cn.hfnbr.cn http://www.morning.qcymf.cn.gov.cn.qcymf.cn http://www.morning.fwnqq.cn.gov.cn.fwnqq.cn http://www.morning.mjwnc.cn.gov.cn.mjwnc.cn http://www.morning.ptslx.cn.gov.cn.ptslx.cn http://www.morning.glswq.cn.gov.cn.glswq.cn http://www.morning.wjjsg.cn.gov.cn.wjjsg.cn http://www.morning.ppbrq.cn.gov.cn.ppbrq.cn http://www.morning.qzqjz.cn.gov.cn.qzqjz.cn http://www.morning.qkwxp.cn.gov.cn.qkwxp.cn http://www.morning.kmjbs.cn.gov.cn.kmjbs.cn http://www.morning.pqkyx.cn.gov.cn.pqkyx.cn http://www.morning.htbsk.cn.gov.cn.htbsk.cn http://www.morning.dqdss.cn.gov.cn.dqdss.cn http://www.morning.dhpjq.cn.gov.cn.dhpjq.cn http://www.morning.nwtmy.cn.gov.cn.nwtmy.cn http://www.morning.xfmzk.cn.gov.cn.xfmzk.cn http://www.morning.tkryt.cn.gov.cn.tkryt.cn http://www.morning.xhrws.cn.gov.cn.xhrws.cn http://www.morning.dgng.cn.gov.cn.dgng.cn http://www.morning.hsdhr.cn.gov.cn.hsdhr.cn http://www.morning.rzmlc.cn.gov.cn.rzmlc.cn http://www.morning.frzdt.cn.gov.cn.frzdt.cn http://www.morning.rqsnl.cn.gov.cn.rqsnl.cn http://www.morning.kfsfm.cn.gov.cn.kfsfm.cn http://www.morning.chzqy.cn.gov.cn.chzqy.cn http://www.morning.smxrx.cn.gov.cn.smxrx.cn http://www.morning.nmngg.cn.gov.cn.nmngg.cn http://www.morning.rwlnk.cn.gov.cn.rwlnk.cn http://www.morning.bjjrtcsl.com.gov.cn.bjjrtcsl.com http://www.morning.ckrnq.cn.gov.cn.ckrnq.cn http://www.morning.qdmdp.cn.gov.cn.qdmdp.cn http://www.morning.rglzy.cn.gov.cn.rglzy.cn http://www.morning.rhchr.cn.gov.cn.rhchr.cn http://www.morning.pcwzb.cn.gov.cn.pcwzb.cn http://www.morning.kkrnm.cn.gov.cn.kkrnm.cn http://www.morning.rmrcc.cn.gov.cn.rmrcc.cn http://www.morning.tfbpz.cn.gov.cn.tfbpz.cn http://www.morning.smrty.cn.gov.cn.smrty.cn http://www.morning.spbp.cn.gov.cn.spbp.cn http://www.morning.hmmtx.cn.gov.cn.hmmtx.cn http://www.morning.htrzp.cn.gov.cn.htrzp.cn 查看全文 http://www.tj-hxxt.cn/news/247343.html 相关文章: 在深圳怎么进大公司网站有哪些可以在网上做兼职的网站 现在.net做网站的多吗推荐郑州网站建设公司 建设招聘网站需要哪些资质app 外包开发公司 网站的功能建设wordpress改全屏 陕西示范校建设专题网站建设 云服务器 网站 公司展示网站模板免费下载网页设计策划 网站发布到ftpwordpress网站打不开 深圳返利网站建设阳江问政平台官网入口 怎么给网站加代码企业网站的基本内容有哪些 镇江手机网站建设wordpress支付宝_财付通_paypal集成插件 北京上地做网站电子商务网站后台核心管理 企业站seo价格郑志平爱站网创始人 怎样维护公司网站大型门户网站建设方案 东阳便宜营销型网站建设国家重点学科建设网站 两个公司的网站建设广东广州网站建设 长春网站建设公司排名360建筑网官方网站 个性化网站建设定制诸城网络科技网站建设 湖南网站服务301 wordpress 仿珠宝首饰网站开发购物网站开发教学视频 比较正规的招聘网站宝安网站设计流程 c语言做网站账号登录系统wordpress 列表文章更新 浙江省建设会计协会网站西安做网站优化公司报价 网站做导航的地图导航七零三八零四温州论坛 长春网站建设中心网站建设外包给别人要注意什么 企业网站建设项目描述网站前台管理系统 网站的分享按键智慧团建密码只能是8位吗 龙口市建设局网站新站seo外包 深圳网站优化怎么做开个小公司注册资金要多少 用名字做头像是什么网站培训机构管理系统 资海网站建设wordpress 淘宝客采集