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

做一建真题的网站长沙本地推广

做一建真题的网站,长沙本地推广,网络建设公司有哪些,成都网站建设有限公司这里写目录标题 Redis主从复制主从复制过程环境搭建从节点配置常见问题主从模式缺点 Redis主从复制 虽然 Redis 可以实现单机的数据持久化,但无论是 RDB 也好或者 AOF 也好,都解决不了单点宕机问题,即一旦 redis 服务器本身出现系统故障、硬…

这里写目录标题

    • Redis主从复制
      • 主从复制过程
      • 环境搭建
      • 从节点配置
      • 常见问题
      • 主从模式缺点

Redis主从复制

虽然 Redis 可以实现单机的数据持久化,但无论是 RDB 也好或者 AOF 也好,都解决不了单点宕机问题,即一旦 redis 服务器本身出现系统故障、硬件故障等问题后,就会直接造成数据的丢失,因此需要使用另外的技术来解决单点问题。

主从复制过程

Redis 支持主从复制分为全量同步和增量同步,首次同步是全量同步,主从同步可以让从服务器从主服务器备份数据,而且从服务器还可与有从服务器,即另外一台 redis 服务器可以从一台从服务器进行数据同步,redis 的主从同步是非阻塞的,其收到从服务器的 sync(2.8 版本之前是 PSYNC)命令会 fork 一个子进程在后台执行 bgsave 命令,并将新写入的数据写入到一个缓冲区里面,bgsave执行完成之后并生成的将 RDB 文件发送给客户端,客户端将收到后的 RDB 文件载入自己的内存,然后主 redis 将缓冲区的内容在全部发送给从 redis,之后的同步从服务器会发送一个 offset 的位置(等同于 MySQL 的 binlog 的位置)给主服务器,主服务器检查后位置没有错误将此位置之后的数据包括写在缓冲区的积压数据发送给 redis 从服务器,从服务器将主服务器发送的挤压数据写入内存,这样一次完整的数据同步,再之后再同步的时候从服务器只要发送当前的 offset 位 置给主服务器,然后主服务器根据响应的位置将之后的数据发送给从服务器保存到其内存即可。Redis 全量复制一般发生在 Slave 初始化阶段,这时 Slave 需要将 Master 上的所有数据都复制一份。

具体步骤如下:
1)从服务器连接主服务器,发送 SYNC 命令;
2)主服务器接收到 SYNC 命名后,开始执行 BGSAVE 命令生成 RDB 快照文件,并使用缓冲区记录此后执行的所有写命令;
3)主服务器 BGSAVE 执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令;
4)从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;
5)主服务器快照发送完毕后开始向从服务器发送缓冲区中的写命令;
6)从服务器完成对快照的载入,开始接收命令请求,并执行来自主服务器缓冲区的写命令;
7)后期同步会先发送自己 slave_repl_offset 位置,只同步新增加的数据,不再全量同步。

在这里插入图片描述

环境搭建

程序端连接到高可用负载的 VIP,然后连接到负载服务器设置的 Redis 后端 real server,此模式不需
要在程序里面配置 Redis 服务器的真实 IP 地址,当后期 Redis 服务器 IP 地址发生变更只需要更改
redis 相应的后端 real server 即可,可避免更改程序中的 IP 地址设置。

从节点配置

Redis Slave 也要开启持久化并设置和 master 同样的连接密码,因为后期 slave 会有提升为 master 的
可能,Slave 端切换 master 同步后会丢失之前的所有数据。
一旦某个 Slave 成为一个 master 的 slave,Redis Slave 服务会清空当前 redis 服务器上的所有数据并
将 master 的数据导入到自己的内存,但是断开同步关系后不会删除当前已经同步过的数据。

vim redis.conf
slaveof 192.168.37.17 6379
masterauth 123456 #master 如果密码需要设置

验证复制

master上
# redis-cli -a 123456 set name mageslave上:
[root@node27 redis]# redis-cli -a 123456 get name
"mage"

Slave上只读

[root@node27 redis]# redis-cli -a 123456 set k27 v27
(error) READONLY You can't write against a read only slave.

slave切换master

[root@node27 redis]# redis-cli -a 123456 slaveof no one

常见问题

1) 127.0.0.1:6379> REPLICAOF 192.168.37.17 6379
(error) ERR unknown command REPLICAOF, with args beginning with: 192.168.37.17, 6379,

REPLICAOF  host port 命令是 SLAVEOF host port在Redis5.0新增的,所以5.0版本之前使用SLAVEOF参考:
https://redis.io/commands/replicaof

2) [root@node27 redis]# redis-cli -a 123456 info replication

master_link_status:down

master 重启可以

3) 不同的 redis 版本之间存在兼容性问题,因此各 master 和 slave 之间必须保持版本一致

主从模式缺点

上一个步骤的主从架构无法实现 master 和 slave 角色的自动切换,即当 master 出现 redis 服务异
常、主机断电、磁盘损坏等问题导致 master 无法使用,而 redis 高可用无法实现自故障转移(将 slave
提升为 master),需要手动改环境配置才能切换到 slave redis 服务器,另外也无法横向扩展 Redis 服
务的并行写入性能,当单台 Redis 服务器性能无法满足业务写入需求的时候就必须需要一种方式解
决以上的两个核心问题,

1.master 和 slave 角色的无缝切换,让业务无感知从而不影响业务使用
2.可以横向动态扩展 Redis 服务器,从而实现多台服务器并行写入以实现更高并发的目的。
Redis 集群实现方式:客户端分片 代理分片 Redis Cluster

http://www.hkea.cn/news/697440/

相关文章:

  • 台州专业网站建设方案seo软文代写
  • 个人网站 百度推广全球搜索大全
  • 网站消息推送5118素材网站
  • 天津 响应式网站设计企业网站模板免费
  • 网站用花生壳nas做存储百度seo发包工具
  • wordpress cache深圳纯手工seo
  • 怎样找到正规代加工网站百度地图3d实景地图
  • 潍坊网站建设公司网站搭建免费
  • 惠州做网站好的公司下载百度语音导航地图安装
  • 春节网站怎么做小说排行榜百度搜索风云榜
  • 商城服务是什么软件seo是指什么岗位
  • 无锡网站建设有限公司网站快速收录的方法
  • 网站建设通报推广网站多少钱
  • 网络推广公司成都seo排名优化教程
  • 一台手机登录微信网页版西安优化外
  • 如何做旅游攻略网站长沙seo优化推荐
  • 长春火车站电话咨询电话快排seo
  • 龙城建设网站公司网站内容优化方法
  • 南通网站建设搭建网站卖链接
  • 驻马店市做网站seo臻系统
  • 找公司做网站怎么图片都要自己找百度推广官网电话
  • 网站小样用什么做seo外链平台热狗
  • 建站点的步骤sem是什么
  • 深圳专业做网站的衡水网站优化推广
  • 徐汇科技网站建设2345中国最好的网址站
  • 邢台论坛吧百度seo收录软件
  • 做国外服务器网站吗怎么让百度搜索靠前
  • 做动态图网站有哪些自建站怎么推广
  • web网站开发课程设计报告seo技术培训沈阳
  • 会宁网站建设公司网站优化助手