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

有公司可以做网站升级ipv6同一家公司可以做几个网站吗

有公司可以做网站升级ipv6,同一家公司可以做几个网站吗,修改wordpress标题图片大小,网站维护中页面模板PartitionLeaderSelector 通过对前面的分析可知,PartitionMachine将Leader副本选举、确定ISR集合的工作委托给了PartitionLeaderSelector接口实现,PartitionMachine可以专注于管理分区状态。这是策略模式的一种典型的应用场景。 图展示了PartitionLead…

PartitionLeaderSelector

通过对前面的分析可知,PartitionMachine将Leader副本选举、确定ISR集合的工作委托给了PartitionLeaderSelector接口实现,PartitionMachine可以专注于管理分区状态。这是策略模式的一种典型的应用场景。

图展示了PartitionLeaderSelector的实现类,这五个不同的实现提供了不同的策略。PartitionLeaderSelector接口的定义如下:

在这里插入图片描述
NoOpLeaderSelector是其中最简单的实现,它并没有进行Leader选举,而是将currentLeaderAndlsr直接返回,需要接收LeaderAndIsrRequest的Broker则是分区的AR集合。代码就不贴出来了。

OfflinePartitionLeaderSelector会根据currentLeaderAndlsr选举新的Leader和ISR集合,策略如下:

  1. 如果在ISR集合中存在至少一个可用的副本,则从ISR集合中选择新的Leader副本,当前ISR集合为新ISR集合。
  2. 如果ISR集合中没有可用的副本且“Unclean leader election”配置被禁用,那么就抛出异常。
  3. 如果“Unclean leader election”被开启,则从AR集合中选择新的Leader副本和ISR集合。
  4. 如果AR集合中没有可用的副本,抛出异常。

对于剩余的PartitionLeaderSelector实现,这里只介绍其策略。

PreferredReplicaPartitionLeaderSelector的策略是:如果“优先副本”可用且在ISR集合中,则选取其为Leader副本,当前的ISR集合为新的ISR集合,并向AR集合中所有可用副本发送LeaderAndIsrRequest,否则会抛出异常。

ReassignedPartitionLeaderSelector涉及到副本的重新分配,副本重新分配的相关概念后面详细分析,这里先简单了解ReassignedPartitionLeaderSelector的策略:选取的新Leader副本必须在新指定的AR集合中且同时在当前ISR集合中,当前ISR集合为新ISR集合,接收LeaderAndIsrRequest的副本是新指定的AR集合中的副本。

ControlledShutdownLeaderSelector的策略是:从当前ISR集合中排除正在关闭的副本后作为新的ISR集合,从新ISR集合中选择新的Leader,需要向AR集合中可用的副本发送LeaderAndIsrRequest。

ReplicaStateMachine

ReplicaStateMachine是Controller Leader用于维护副本状态的状态机。副本状态由ReplicaState接口表示,它有七个子类,分别代表了副本的七种不同的状态,如表所示。

在这里插入图片描述
ReplicaState之间的转换如图所示。下面介绍各个ReplicaState状态之间转换时需要完成的相关操作。

  • NonExistentReplica →NewReplica Controller向此副本所在Broker发送LeaderAndIsrRequest,并向集群中所有可用的Broker发送UpdateMetadataRequest。
  • NewReplica →OnlineReplicaController将NewReplica加入到AR集合中。
  • OnlineReplica,OfflineReplica→OnlineReplica

Controller向此副本所在的Broker发送LeaderAndIsrRequest,并向集群中所有可用的Broker发送UpdateMetadataRequest。

  • NewReplica,OnlineReplica,OflineReplica,ReplicaDeletionIneligible →OffineReplica
    Controller向副本所在Broker发送StopReplicaRequest,之后会从ISR集合中清除此副本,最后向其他可用副本所在的Broker发送LeaderAndIsrRequest,并向集群中所有可用的Broker发送UpdateMetadataRequest。
  • OffineReplica→ReplicaDeletionStarted
    Controller向副本所在Broker发送StopReplicaRequest。
  • ReplicaDeletionStarted →ReplicaDeletionSuccessful只做状态转换,并没有其他操作。
  • ReplicaDeletionStarted →ReplicaDeletionIneligible只做状态转换,并没有其他操作。
  • ReplicaDeletionSuccessful →NonExistentReplicaController从AR集合中删除此副本。

在这里插入图片描述
在ReplicaStateMachine中也有controllerContext、zkUtils、brokerRequestBatch字段,它们的功能与PartitionStateMachine中的同名字段相同,ReplicaStateMachine剩余的字段如下所述。

  • replicaState:Map[PartitionAndReplica,ReplicaState]类型,记录每个副本对应的ReplicaState状态。
  • brokerChangeListener:ZooKeeper的监听器,用于监听Broker的变化,例如Broker宕机或重新上线等事件。

ReplicaStateMachine启动时会对replicaState集合进行初始化,并调用handleStateChanges()方法尝试将可用副本转换为OnlineReplica状态。

http://www.sczhlp.com/news/137730/

相关文章:

  • 柳市网站托管wordpress两侧有空白
  • 广州注册公司新政策鄂州seo多少钱
  • 自己制作wordpress主题广州网站建设公司乐云seo598
  • 学校网站建设答辩企业怎样选择域名做网站
  • 网站后台模板 php自定义内容网站
  • 网站二级页面模板四川省建设网站电子签章
  • 西安企业网站做旅行网站的意义
  • 个人网站托管网站除了域名还要什么
  • 手机网站页面设计要求企业推广app
  • 广州英文建站公司网站与装修公司
  • 贵州网站推广电话seo如何优化关键词排名
  • 网站开发与部署题库龙岗开发公司网站建设
  • 网站建设流程一般可分为哪几个阶段菏泽市住房和建设局网站
  • React 基础核心概念(8 个)——从入门到能写业务组件(上)| 葡萄城技术团队
  • 2 day - when
  • 做网站运营工资是不是很低如何做网站结构及栏目策划
  • 网站运营与管理的一个目的是哪些网站可以免费做推广
  • 网站建设模板双人海南专业网站运营托管
  • 企业网站开发用什么语言写wordpress wp_ajax_
  • 西安网站制作费用太原今天最新通知
  • 网站logo衔接贝锐免费域名
  • 拖拽式制作网站wordpress页面怎么编辑器
  • .网站建设课程设计深圳做的好的电子行业招聘网站
  • 设计网站如何打造收费中国太空空间站
  • 网站建设电子书资料酒类网站建
  • 高品质网站设计制作三类人不适合学编程plc
  • 电子商务网站建设与管理考试题上海建设工程管理网站
  • 高明区做网站5188站长平台
  • 广州网站建设广州网络推广公司好影楼修图
  • 杭州住房城乡建设网站查询品牌建设心得体会