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

搭建redis主从同步实现读写分离(原理剖析)

搭建redis主从同步实现读写分离(原理剖析)


文章目录

  • 搭建redis主从同步实现读写分离(原理剖析)
  • 前言
  • 一、搭建主从同步
  • 二、同步原理


前言

为什么要学习redis主从同步,实现读写分析。因为单机的redis虽然是基于内存,单机并发已经能支撑很高。但是随着业务量的发展还是存在单机请求上限的瓶颈。所以redis提供了读写分离,主从同步的模式。可以让redis集群指定主节点,与从节点,一般来说大部分的业务都是读多,写少,所以一般都是让主节点来接收写请求,从节点来接收读请求
在这里插入图片描述

一、搭建主从同步

1.新建三个redis实例
在这里插入图片描述
2.修改每个redis的启动端口(因为当前演示的是本机单机环境搭建redis集群,所以要修改 防止端口冲突)
在这里插入图片描述
在这里插入图片描述
分别修改为:6379(master) node1-node3 6380 6381 6382
3.设置主从关系
有临时和永久声明的主从操作
在这里插入图片描述临时声明:
先启动所有实例,cmd进去 输入指令

redis-server.exe redis.windows.conf

在这里插入图片描述

执行 SLAVEOF host port

D:\redis\sentinel-model\ndoe1>redis-cli.exe -p 6380
127.0.0.1:6380> SLAVEOF 127.0.0.1 6379
OK
127.0.0.1:6380> ^C
D:\redis\sentinel-model\ndoe1>redis-cli.exe -p 6381
127.0.0.1:6381> SLAVEOF 127.0.0.1 6379
OK
127.0.0.1:6381> ^C
D:\redis\sentinel-model\ndoe1>redis-cli.exe -p 6382
127.0.0.1:6382> SLAVEOF 127.0.0.1 6379
OK
127.0.0.1:6382>

查看集群状态

D:\redis\sentinel-model\ndoe1>redis-cli.exe -p 6380
127.0.0.1:6380> info replication
# Replication
role:slave
master_host:127.0.0.1
master_port:6379
master_link_status:up
master_last_io_seconds_ago:8
master_sync_in_progress:0
slave_repl_offset:534
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:0033385853630adf5c48ead5989e6a8b1084fdfb
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:534
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:534
127.0.0.1:6380>

此时就可以看到 当前的redis是从节点 我们写操作会被禁止
在这里插入图片描述
在这里插入图片描述
只可以读
在主节点就可以读或者写
在这里插入图片描述
在其他从节点可以查到一样的数据
在这里插入图片描述
主从架构搭建完毕

二、同步原理

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

  • 成立软件公司seo型网站
  • 网站设计站app如何推广
  • 四川移动网站建设网络营销策划方案ppt模板
  • 录音录像手表网站网站建设首页
  • 深圳做网站比较域名交易域名出售
  • 做网站需要哪些资料2345网址导航安装
  • Day1:前端项目uni-app壁纸实战
  • Python-函数参数
  • (四)数据检索与增强生成——让对话系统更智能、更高效
  • 微软的 Copilot 现在可以浏览网页并为您执行操作
  • Qt中左侧项目菜单中构建设置功能中的构建步骤是怎么回事
  • 数字内容个性化推荐引擎构建
  • 计算机网络实验(包括实验指导书)
  • 可视化工具
  • STM32 × CLion 新建项目
  • 人工智能(AI)入门篇:什么是人工智能?什么是生成式人工智能?
  • 浅入浅出:从传统开发者角度去了解区块链和智能合约之间的关系
  • 【安全】简单解析统一身份认证:介绍、原理和实现方法
  • DevOps与Docker的关系
  • 微信小程序开发-02.准备工作
  • uniapp地图导航及后台百度地图回显(v2/v3版本)
  • MySQL介绍及使用
  • 数智跃迁ethercat转profinet网关开启abb机器人未来制造新篇
  • 【Nova UI】五、解锁 SASS 魔法,优雅实现 BEM 规范
  • WordPress浮动广告插件+飘动效果客服插件
  • 开源 PDF.js 文件编辑操作