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

如果评价网站做的好不好资深seo顾问

如果评价网站做的好不好,资深seo顾问,呼市做无痛人流z首大网站,东莞网站排名优化公司目录 1. 高可用2. redis 哨兵模式3. 图文的方式让我们读懂这几个算法3.1. Raft算法 - 图文3.2. Paxos算法 - 图文3.3. 区别: 1. 高可用 在 Redis 中,实现 高可用 的技术主要包括 持久化、复制、哨兵 和 集群,下面简单说明它们的作用&#xf…

目录

  • 1. 高可用
  • 2. redis 哨兵模式
  • 3. 图文的方式让我们读懂这几个算法
    • 3.1. Raft算法 - 图文
    • 3.2. Paxos算法 - 图文
    • 3.3. 区别:

1. 高可用

在 Redis 中,实现 高可用 的技术主要包括 持久化、复制、哨兵 和 集群,下面简单说明它们的作用,以及解决了什么样的问题:

  • 持久化:持久化是 最简单的 高可用方法。它的主要作用是 数据备份,即将数据存储在 硬盘,保证数据不会因进程退出而丢失。
  • 复制:复制是高可用 Redis 的基础,哨兵 和 集群 都是在 复制基础 上实现高可用的。复制主要实现了数据的多机备份以及对于读操作的负载均衡和简单的故障恢复。缺陷是故障恢复无法自动化、写操作无法负载均衡、存储能力受到单机的限制。
  • 哨兵:在复制的基础上,哨兵实现了 自动化 的 故障恢复。缺陷是 写操作 无法 负载均衡,存储能力 受到 单机 的限制。
  • 集群:通过集群,Redis 解决了 写操作 无法 负载均衡 以及 存储能力 受到 单机限制 的问题,实现了较为 完善 的 高可用方案。

2. redis 哨兵模式

介绍:哨兵模式是为了解决服务器故障。
功能:Redis 哨兵模式是指在 Redis 集群中,有一组专门的进程(即哨兵进程)负责监控主节点和从节点的状态,并在发现故障时自动进行故障转移,以保证 Redis 集群的高可用性。

是否默认开启:Redis并没有默认开启哨兵模式,需要手动配置哨兵节点,并通过哨兵节点监控Redis主从节点的健康状态。

哨兵模式三大任务:监控、提醒、自动故障迁移

解决办法:raft算法(基于领导者的一致性算法)、Paxos算法(基于提案的一致性算法)

  1. raft算法(基于领导者的一致性算法):角色分为:领导者、候选者、跟随者
    初始化什么时候变成候选者 - 集群启动时,所有的节点都是跟随者,没有领导者。每个节点都有一个选举超时时间,随机在150ms到300ms之间,如果在超时时间内没有收到领导者的心跳包,就会转变为候选者,开始发起选举。
    发起选举发送选举时,发送什么到其他候选者 - 候选者会增加自己的选举轮次(term),并向其他节点发送选举请求,包含自己的选举轮次和标识。同时,候选者会给自己投一票,并重置自己的选举超时时间。
    投票是否给这个候选者投票 - 跟随者收到选举请求后,会比较自己的选举轮次和候选者的选举轮次,如果自己的选举轮次更大,或者已经给其他候选者投过票,就会拒绝投票;否则,就会同意投票,并重置自己的选举超时时间。
    统计票数统计有多少人给你投票,第一次确认 - 候选者收到投票回复后,会统计自己的票数,如果超过半数,就会成为领导者,并向其他节点发送心跳包,通知自己的领导地位;如果没有超过半数,就会继续等待投票回复,直到超时或者收到心跳包。
    维持领导者领导者诞生,并向其他发送心跳包,第二次确认 - 领导者会周期性地向所有跟随者发送心跳包,维持自己的领导地位,并检查跟随者的状态。如果领导者发现自己的选举轮次小于某个跟随者的选举轮次,就会认为自己的领导地位已经过期,转变为跟随者,重新开始选举超时计时。
    处理冲突故障导致多个领导者出现 - 如果集群中出现网络分区或者节点故障,可能会导致多个候选者同时发起选举,造成选举冲突。Raft算法通过随机化选举超时时间,使得冲突的概率降低。同时,如果一个候选者收到了另一个候选者的选举请求,它会拒绝投票,并重置自己的选举超时时间,避免无效的选举。
    最终,只有一个候选者能够获得多数的票数,成为领导者,结束选举。

  2. Paxos算法(基于提案的一致性算法):角色分为:提议者和接受者
    准备阶段生成提案编号 - 提议者会生成一个唯一的提案编号(n),并向所有的接受者发送准备请求,包含提案编号(n)。
    承诺阶段承诺不再接受任何编号小于n的提案 - 接受者收到准备请求后,会比较自己已经接受过的最大提案编号(n’)和当前提案编号(n),如果n’ >= n,就会拒绝准备请求;否则,就会承诺不再接受任何编号小于n的提案,并回复提议者,包含自己已经接受过的最大提案编号(n’)和对应的从节点标识(v’)。
    接受阶段接收到所有提案,然后统计,第一次确认 - 提议者收到半数以上的接受者的回复后,会从中选择最大的提案编号(n’)和对应的从节点标识(v’),如果n’为0,就说明没有接受者接受过任何提案,此时提议者可以自由选择一个从节点标识(v)。然后,提议者会向所有的接受者发送接受请求,包含提案编号(n)和从节点标识(v)。
    确认阶段统计后,向其他接收者第二次确认,再也没有新的提案了(二阶段确认) - 接受者收到接受请求后,会比较自己已经承诺过的最小提案编号(n’‘)和当前提案编号(n),如果n’’ > n,就会拒绝接受请求;否则,就会接受提案,并回复提议者,包含提案编号(n)和从节点标识(v)。
    完成阶段提升为主节点 - 提议者收到半数以上的接受者的回复后,就会认为提案达成一致,即从节点标识(v)被选为新的主节点,并通知所有的接受者。

它们都采用二阶段确认的方式来达成共识的,都差不多。

参考:Redis哨兵模式中的选举算法:Raft vs Paxos
参考:Paxos算法
参考:redis默认开启哨兵模式的吗

3. 图文的方式让我们读懂这几个算法

3.1. Raft算法 - 图文

在这里插入图片描述

3.2. Paxos算法 - 图文

在这里插入图片描述

3.3. 区别:

确认阶段不同:

  • Raft算法:判断是否投过票
  • Paxos算法:不接受任何小于该编号的提案,而且还有第二阶段确认

相同:

  • 都是半数以上确认,都需要确认当前选举轮次/提案编号是最新的。
http://www.khdw.cn/news/66765.html

相关文章:

  • 网站做专题主题该怎么选长沙企业网站设计
  • 网站建设建设哪家好关键字排名优化工具
  • 北京网站seo推广如何进入网站
  • 网站banner尺寸是多少孝感seo
  • 宁晋网站开发百度官网地址
  • 福州网站制作网站新乡seo网络推广费用
  • 和网站建设相关的行业google官方入口
  • iwebshop怎么做网站软文推广有哪些
  • 社保网站上怎么做减员seo站长综合查询
  • wordpress中文站北京疫情太严重了
  • 手机网站用什么软件做的深圳百度推广开户
  • 网站服务器端口如何做防护广安网站seo
  • 网站开发专业都有哪些课程抚顺seo
  • 做网站工作职责新闻稿发布软文平台
  • 家庭农场做网站南京seo报价
  • 备案期间网站要关闭吗广东百度seo
  • 由音乐学院做的网站优化的近义词
  • 网站建设合同规范b站推广入口
  • html登录注册页面模板seo全网营销的方式
  • wordpress主题后台不显示google seo 优化
  • 网站一年费用seo网站整站优化
  • 做b2c商城网站怎么做信息流广告代理商
  • 在线视频网站 一级做爰片网络营销心得体会300字
  • 门户网站营销策略百度云网盘免费资源
  • 扬州 网站 建设浙江网站建设制作
  • 做装饰工程的在什么网站投标江苏泰州seo网络优化推广
  • 百度seo关键词点击软件seo能干一辈子吗
  • 大港做网站郑州网络推广软件
  • ps彩屏做的好的网站semester什么意思
  • 欧亚专线荷兰快递单号查询google seo