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

网站在电脑与wap显示一样广州市网站建设 乾图信息科技

网站在电脑与wap显示一样,广州市网站建设 乾图信息科技,视频拍摄方案,新人怎么做电商一 、kafka核心总控制器#xff08;Controller#xff09; 在Kafka集群中会有一个或者多个broker#xff0c;其中有一个broker会被选举为控制器#xff08;Kafka Controller#xff09;#xff0c;它负责管理整个集群中所有分区和副本的状态。 作用#xff1a;leader副… 一 、kafka核心总控制器Controller 在Kafka集群中会有一个或者多个broker其中有一个broker会被选举为控制器Kafka Controller它负责管理整个集群中所有分区和副本的状态。 作用leader副本出现故障时选举新的leder 检测到某个分区的ISR发生变化时通知所有borker更新元数据 分区数量发生变化时通知其它节点感应到新分区 *ISR已与leader同步的副本的集合 Controller的选举 集群启动时每个broker都会尝试在zookeeper上创建一个controller临时节点zk会保证有且仅有一个创建成功其它节点会一直监听这个临时节点如果broker宕机其它节点会再次创建临时节点创建成功的成为controller controller相对于其它broker不同的职责 1、监听broker的变化 为Zookeeper中的/brokers/ids/节中添加BrokerChangeListener节点处理broker增减的变化 2、监听topic变化为Zookeeper中的Brokers/topics节点添加TopicChangeListener用来处理topic增减的变化TopicDeleteinoListener处理删除topic的动作 3、从zookeeper中读取当前所有topic、partition以及broker相关信息并进行相应的管理对于所有topic所对应的Zookeeper中的/brokers/topics/[topic]节点添加PartitionModificationsListener用来监听topic中的分区分配变化; 4、更新集群的元数据信息同步到其它普通的broker节点中 二、Partition副本选举Leader机制 初始化patitiion 会挑选编号最大的副本为leader Controller感知到分区所在的broker挂了通过监听zk中的节点controller会从ISR已同步的数据集里挑第一个broker作为leader就是同步最多数据的副本          unclean.leader.election.enablefalse 代表已同步的副本没有全部挂掉相反已同步的副本全部挂掉则从未同步的副本中选出leader这种情况下的副本会 丢失消息 副本进入ISR的条件 1、副本节点不能产生分区必须与zk和leader保持联通 2、副本能复制leader的所有写操作并且不能落后太多。副本与leader副本数据更新时间由replica.lag.time.max.ms配置决定超出这个时间未同步移除ISR列表 三、消费者消费消息的offset记录 每个消费者会定期将自己消费分区的offset提交给kafka内部的topic提交的key是consumerGroupIdtopic分区号value解释当前offset的值kafka会定期清理topic的消息最后保留最新的那条数据 通过增加更多的分区提高机器的并发量 四、消费者Rebalance机制 rebalance就是说如果消费组里的消费者数量有变化kafka会重新分配消费者与消费分区的关系只针对未指定消费分区的情况指定了分区不会进行重新分配 触发条件 1、消费组中的消费者数量发生变化 2、增加了topic的分区 3、消费组订阅了更多的topic rebalance过程中无法消费消息如果集群内节点较多此过程会相当耗时 Rebalance的工程 1、选择组协调器GroupCoordinator每个消费组都会选择一个broker作为自己的组协调器coordinator负责监控这个消费组里的所有消费者心跳判断是否宕机消费组中的每个消费者都会启动时向kafka集群中的某个节点发送findCoordinatorRequest请求来查找对应的组协调器 选择公式hashconsumer group id%_consumer_offsets主题分区数 2、加入消费组成功找到组协调器后加入消费组发送joinGroupRequest请求组协调器会将第一个加入的消费者选为leader消费组协调器把consumer group情况发送给这个leader这个leader负责指定分区方案 3、方案同步消费组leader消费组协调器向groupCoordinator发送SyncGroupRequestgroupCoordinator将方案下发给所有消费者各个消费者将与指定的分区leader建立连接进行消费 Rabalance分区分配策略range、round-robin、stocky 假设一个主题十分分区现在又三个消费者 rang策略就是按照分区序号排序假设 n分区数消费者数量 3 m分区数%消费者数量 1第一个消费者得到的分区为n10~3),第二个消费者n4~6第三个消费者7~9 round-robin轮训策略第一个消费者0,3,6,9第二个消费者1,4,7第三个消费者2,5,8 stocky与rouond-robin初试分配类似  在rebalance的时候需要保证两个原则 1、分区的分配要尽可能均匀 2、分区的分配尽可能与上次分配保持相同 第一个目标优于第二个目标比如第三个消费者挂了原有的分配第一个消费者0,3,6,9第二个消费者1,4,7第三个消费者2,5,8重新分配会将2分配给第一个消费者58分给第二个消费者 五、消息推送机制 1、写入方式producer push消息到broker消息会被添加到patition最后顺序写入磁盘顺序写入效率比随机高保证吞吐量 2、消息路由机制 a、指定patition直接使用 b、未指定patition指定key通过对key的hash选出patition c、都为指定轮训 3、写入流程 1、producer 先从 zookeeper 的 /brokers/.../state 节点找到该 partition 的 leader 2、producer 将消息发送给该 leader 3、leader 将消息写入本地 log 4. followers 从 leader pull 消息写入本地 log 后 向leader 发送 ACK 5、leader 收到所有 ISR 中的 replica 的 ACK 后增加 HWhigh watermark最后 commit 的 offset 并向 producer 发送 ACK   六、HW与LEO详解broker宕机后消息的保障 HW俗称高水位HighWatermark的缩写取一个partition中对应的最小的LEOlog-end-offset作为HWconsumer最多只能消费到HW所在位置。每个副本都有HWleader和follower各自负责更新自己的HW。leader写入消息consumer不能立刻消费leader会等待该消息被所有ISR中的replicas同步更新后consumer才能消费这样即使broker挂了新选举出来的消息仍然可以充新的leader中获取broker内部拉去消息没有HW的限制 kafka 的复制并非是完全同步复制也并非是异步复制。同步复制要求所有的副本全部复制完成才会commit这种复制性能较低异步复制又不能保证消息不丢失kafka的复制要结合提交的acks参数讨论 六、日志分段存储 kafka一个分区的消息数据对应存储在一个文件夹下以topic名称分区号命名消息在分区内是分段segment存储的每段消息都存储在不一样的log文件里方便快速删除每个分段最大不能超过1g方便加载到内存中 部分消息的 offset 索引文件 kafka 每次往分区发 4K ( 可配置 ) 消息就会记录一条当前消息的 offset 到 index 文件如果要定位消息的offset 会先在这个文件里快速定位再去 log 文件里找具体消息 00000000000000000000. index 消息存储文件主要存 offset 和消息体 00000000000000000000. log 消息的发送时间索引文件 kafka 每次往分区发 4K ( 可配置 ) 消息就会记录一条当前消息的发送时间戳与对应的 offset 到 timeindex 文件如果需要按照时间来定位消息的 offset 会先在这个文件里查找 00000000000000000000. timeindex 文件如下 00000000000005367851. index 00000000000005367851. log 00000000000005367851. timeindex 00000000000009936472. index 00000000000009936472. log 00000000000009936472. timeindex kafka在zookeeper节点数据
http://www.zqtcl.cn/news/419376/

相关文章:

  • 婚庆网站怎么设计模板电子商务系统规划方案
  • 东莞中企动力做网站wordpress结合tornado
  • 用织梦做手机移动版网站邯郸网站建设品牌加盟
  • 网站做简历模板动漫设计专业就业方向
  • 沧州市东光建设局 网站电商网站目录优化
  • 公司网站建设案例教程wordpress word文档
  • 阿里巴巴网站本土化建设wordpress jquery
  • 用asp怎么做网站wordpress怎么查看主题
  • 用自己的电脑建网站兴义网站建设
  • 保定医疗网站建设公司wordpress 视频管理 主题
  • php做网站半成品网页设计作业怎么交
  • 郑州网站建设培训学校公众号投票怎么制作
  • 韩国设计交流网站网站设计网页配色
  • 线上设计师网站网络科技公司排名
  • 安徽建设厅网站网址品牌营销ppt
  • 用iis做的网站怎么更改端口南京汤山建设银行网站
  • 威海哪有网站建设十大网页制作工具
  • 上海专业网站建设公司合肥网站建站
  • 怎样将自己做的网站给别人看做平台网站一般有php还是js
  • 做企业网站一般要多少钱WordPress数据库搜索
  • wordpress建立好的网站app的开发流程是什么
  • 工作室网站WordPress文章图片采集插件
  • 青岛网站开发学校wordpress页面样板
  • 校级特色专业建设网站公司网站建设需要些什么要求
  • 嵌入式开发软件有哪些上海谷歌seo
  • 国际学校网站如何建设wordpress登入可见
  • 如何做好网站内链网站开发平台开发
  • 安徽省建设厅网站怎么进不去2022年国内重要新闻
  • 河北建设机械协会网站wordpress怎么做两个语言网站
  • 美容网站模版在线动画手机网站模板