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

政府网站集约化建设规划/html网页制作模板

政府网站集约化建设规划,html网页制作模板,淘宝客手机网站搭建,商业广告创意设计目录 前言 七、事务管理 7.1事务中的异常处理 八、订阅发布 8.1概述 ​8.2.Redis针对发布订阅相关指令 九、主从复制 9.1主从复制概述 9.2.主从复制的用处 9.3主从复制实现原理 ​9.3.1.psync指令 9.3.2.复制偏移量 9.3.3复制积压缓冲区&节点ID 前言 今天…

目录

前言

七、事务管理

7.1事务中的异常处理

八、订阅发布

8.1概述

​8.2.Redis针对发布订阅相关指令

九、主从复制

9.1主从复制概述

9.2.主从复制的用处 

9.3主从复制实现原理 

​9.3.1.psync指令

9.3.2.复制偏移量 

9.3.3复制积压缓冲区&节点ID 



前言

今天接着分享redis,本次分享的主要是事务管理、订阅发布和主从复制。


七、事务管理

事务的本质,其实就是一组命令的集合。一个事务中的所有命令都会按照命令的顺序去

执行,而中间不会被其他命令加塞。

7.1事务中的异常处理

  1. 命令语法错误。针对语法错误,会导致整个事务执行被中断

  2. 运行操作错误针对执行中的异常,只会导致该条指令的执行失败,而不会影响事务中其他的指令。

八、订阅发布

8.1概述

如果熟悉消息中间件,那么对发布订阅一定不陌生。发布者Publish一条消息,消息发送

到Channel通道中,然后所有订阅了这个通道的订阅者Subscriber都会接收到这条消息。

如下图所示:

8.2.Redis针对发布订阅相关指令

九、主从复制

9.1主从复制概述

主从复制,是指将一台Redis服务器的数据复制到其他的Redis服务器。前者称为主节点

(Master/Leader),后者称为从节点(Slave/Follower);数据是从主节点复制到从节

点的。其中,主节点负责写数据(当然有读的权限),从节点负责读数据(它没有写数

据的权限)。默认的配置下,每个Redis都是主节点。

一个主节点可以有多个从节点,但是一个从节点只能有一个主节点,即:主从节点是1对N的关系。

9.2.主从复制的用处 

  1. 数据冗余。主从复制实现了数据的备份,实际上提供了数据冗余的实现方式。
  2. 故障恢复。当主节点出现异常时,可以由从节点提供服务,实现快速的故障恢复,实际上提供了服务冗余的实现方式。
  3. 负载均衡。在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务,分担服务器的负载;在写少读多的业务场景下,通过多个从节点分担读负载,可以大大提高Redis服务器是并发量。
  4. 高可用。哨兵配合主从复制,可以是实现Redis集群的高可用。

9.3主从复制实现原理 

Redis的主从复制可以分为两个阶段:sync阶段和command propagate阶段。当从节点启

动后,会发送sync指令给主节点,要求全量同步数据,此为sync阶段;那么,如果后续

Master节点接收到新的增删改操作,也需要Slave节点接收同步的更新,这就是command

propagate阶段;

9.3.1.psync指令

当主从节点都正在运行的时候,出现了网络抖动,造成连接断开,那么当网络恢复,两个

节点再次建立起连接的时候。从节点发送sync指令后,主节点依然需要重新生成RDB,并

对从节点进行全量数据的同步造成。那么这中间的耗时是非常严重的,并且传输备份文件

也会对网络带宽造成很大的消耗。那么为了解决这个问题,从Redis 2.8开始,引入了psync指令来代替sync指令。psync指令会根据不同的情况,来确定执行全量重同步还是部分重同步。

  • 全量重同步。当从节点是第一次与主节点建立连接的时候,那么就会执行全量重同步,这个同步过程与上面我们介绍的sync阶段+command propagate阶段一样。
  • 部分重同步。从节点的复制偏移量无法在复制积压缓冲区中找相应待同步的数据 并且 主节点与从节点不是第一次同步(根据Redis节点ID判断)

9.3.2.复制偏移量 

Master节点和Slave节点都保存着一份复制偏移量。当Master节点每次向Slave节点发送n

字节数据的时候,就会在Master节点偏移量加上n;而Slave节点每次接收到n个字节的

时候,也会在Slave节点偏移量上加n。在命令传播阶段,Slave节点会定期的发送心跳

REPLCONF ACK{offset}指令,这里的offset就是Slave节点的offset。当Master节点接

收到这个心跳指令后,会对比自己的offset和命令里的offset,如果发现有数据丢失,那

么Master节点就会推送丢失的那段数据给Slave节点。如下图所示:

9.3.3复制积压缓冲区&节点ID 

什么是复制积压缓冲区?

复制积压缓冲区是由主节点维护的一个固定长度(默认1MB)的队列。它存储了每个字

节值与对应的复制偏移量。因为复制积压缓冲区的大小是固定的,所以它保存的是主节点近

期执行的写命令。当从节点将offset发送给主节点后,主节点便会根据offset与复制积压缓

冲区的大小来决定是否可以使用部分重同步。如果offset之后的数据仍然在复制积压缓冲区

内,则执行部分重同步;否则还是执行全量重同步。

节点ID

Redis节点服务启动之后,就会产生一个用来唯一标识Redis节点的ID。当Master节点与

Salve节点进行第一次连接同步的时候,Master节点会将ID发送给Slave节点,Slave节点接收

到会对其进行保存。那么当主从服务之间发生了中断重连的时候,Slave服务器会将这个ID

发送给Master服务器,Master服务器会拿自己的ID进行对比,如果相同,则说明主从之前是

连接过的。否则,则说明是第一次建立的连接。那么,就需要全量去同步数据了。

http://www.jmfq.cn/news/5343877.html

相关文章:

  • 齐河网站建设费用/竞价推广账户托管服务
  • 郑州网站建设推销/网页设计与网站建设教程
  • 网站建设的三网合一/qq关键词排名优化
  • 中南集团中南建设网站/seo如何优化排名
  • 厦门app网站建设/合肥seo软件
  • 邯郸网站建设恋家/销售策略和营销策略
  • 上海建设局网站 招聘/百度竞价培训班
  • 服装企业网站建设/网络营销的重要性与意义
  • 英文网站建设 深圳/交换免费连接
  • 宜昌市住房和城乡建设厅官方网站/淘宝店铺怎么运营
  • 荣添网站建设优化/seo专员是什么
  • 敖降网站建设/广告公司名字
  • 杭州建设招聘信息网站/百度知道合伙人答题兼职入口
  • 上海网站建设上海迈歌/河北seo诊断培训
  • 建设部网站江苏金安/优质网站
  • 青海省住房和城乡建设厅门户网站/百度代运营推广
  • 如何找到能够建设网站的人/seo的含义是什么意思
  • 贵德县wap网站建设公司/新闻发布
  • 院系网站建设具体要求/app推广拉新接单平台
  • 联想电脑建设网站前的市场分析/seo外包公司如何优化
  • 环保部网站建设项目/电商seo
  • 中国网站建设调查分析/公司注册
  • 讨论致同国际网站建设情况/软文编辑
  • 政府网站建设绩效评估/职业培训机构有哪些
  • 网站建设的课程都需要什么/磁力天堂最新版地址
  • 淘宝现在网站建设不能发布要发布上面类目/怎么联系地推公司
  • 兰州网站网站建设/seo推广优化服务
  • 网站建设合同标的/国内广告投放平台
  • 石家庄城乡建设局网站6/指定关键词排名优化
  • 网站的建设公司/关键词排名点击软件