• 2024-11-12大数据面试题--kafka夺命连环问(前15问)
    目录1、kafka消息发送的流程?2、Kafka的设计架构你知道吗3、Kafka分区的目的?4、你知道Kafka是如何做到消息的有序性?5、ISR、OSR、AR是什么?6、Kafka在什么情况下会出现消息丢失?7、怎么尽可能保证Kafka的可靠性?8、Kafka中如何做到数据唯一,即数据去重?9、生产者如
  • 2024-11-11消费者组和分区数之间的关系是怎样的?
    消费者组原理:ConsumerGroup(CG):消费者组,由多个consumer组成。形成一个消费者组的条件,使所有消费者的groupid相同。•消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费。•消费者组之间互不影响。所有的消费者都属于某个消费者组,即消费者组是
  • 2024-11-07大数据学习笔记 第5天 ZooKeeper 3.6.3安装部署 CAP原则 Paxos算法 ZAB协议详解
    ZooKeeper3.6.3重点CAP原则Paxos算法存储模型和监听机制一、集群与分布式集群:将一个任务部署在多个服务器,每个服务器都能独立完成该任务。分布式:将一个任务拆分成若干个子任务,由若干个服务器分别完成这些子任务,每个服务器只能完成某个特定的子任务。从概念上就可
  • 2024-11-07Kafka面试题总结
    1、kafka消息发送的流程?2、Kafka的设计架构你知道吗?3、Kafka分区的目的?4、你知道Kafka是如何做到消息的有序性?5、ISR、OSR、AR是什么?6、Kafka在什么情况下会出现消息丢失7、怎么尽可能保证Kafka的可靠性8、Kafka中如何做到数据唯一,即数据去重?9、生产者如何提高
  • 2024-11-06如何做线上问题复盘
    1、什么事复盘复盘,源自围棋中的一个术语,指棋手下完一盘棋后,要在棋盘上重新摆一遍,看看哪里下得好,哪里下得不好。下得好的要继承,下得不好的,要在重新摆的过程中探究怎么样落子才更好。线上问题复盘,通过还原问题现场,问题发生时间线,分析设计、开发、测试、上线、运维等各个环节的问
  • 2024-11-06kafka分片与副本消息同步的详细策略[持久化]
    kafka分片与副本消息同步的详细策略[持久化]参考文章Kafka学习之路(三)Kafka的高可用DataReplication(副本策略)1.消息传递同步策略Producer在发布消息到某个Partition时,先通过ZooKeeper找到该Partition的Leader,然后无论该Topic的ReplicationFactor为多少,Producer只将
  • 2024-10-27成为不可取代的程序员的编码方式
    背景在一家公司呆了两年了,作为工作十多年的程序员来说,真心感觉这两年时间是真的长,每天上班如上坟,度日如年。21年入坑,接手了一个老项目,进去后发现项目几乎天天报错,每天群里bug满天飞,每天改完一个bug,一会群里又开始叫,每天都是晚上下班才有时间输出业务代码。开始还特别不习
  • 2024-10-26编队队形保持-Leader-Follower法-matlab仿真
    Leader-follower方法是传统编队队形控制中最常用的方法之一。leader跟踪一个预先给定的轨迹,follower和leader轨迹保持一定构型,并速度达到一致。本文使用的应用编队控制情景就如上图所示,是一个小编队。编队中有一个leader,和两个follower。编写的代码是对Desai团队发表
  • 2024-10-24【产品经理修炼之道】-SaaS创业路线图(十):骨干营销团队培养
    团队扩张后,必然就会面临基层和中层干部不足的问题。前面有一篇讲到“团队高效扩张的方法”,团队扩大后立即面临的问题就是,谁来带这些团队?基层销售团队要想带得好,一个人管十几个是不现实的,因为销售管理的工作非常细碎,从早会激发、夕会复盘(根据业务复杂情况不同)、陪访、理单、
  • 2024-10-23[转]Zookeeper介绍
    Zookeeper的工作机制什么是ZooKeeperZooKeeper是一个分布式协调服务,其设计的初衷是为分布式软件提供一致性服务。其本质上,就是文件系统+通知机制。ZooKeeper提供了一个类似Linux文件系统的树形结构,ZooKeeper的每个节点既可以是目录也可以是数据,并且ZooKeeper还提供了对
  • 2024-10-17etcd中的"IS LEARNER"是指什么
    etcd中的"ISLEARNER"是指在etcd集群中新引入的一种节点角色——学习者(Learner)。这个概念最早出现在etcd的3.4版本中。在介绍学习者角色之前,先简单了解一下etcd集群的背景:etcd是一个分布式键值存储系统,常用于服务发现、配置管理和分布式锁等场景。它内部使用Raft算法来保证数据的
  • 2024-10-16etcd入门到实战
    概述:本文将介绍etcd特性、使用场景、基本原理以及Linux环境下的实战操作入门什么是etcd?etcd是一个分布式键值存储数据库关键字解析:键值存储:存储协议是key—value的形式,类似于redis分布式:具有分布式特性、每个etcd实例作为集群中的一个节点,通过分布式锁,leader选举保
  • 2024-10-16模板-并查集DSU
    版本1:路径压缩。structDSU{ std::vector<int>fa; voidinit(intn){ fa.resize(n+1); std::iota(fa.begin(),fa.end(),0); } intleader(intx){ while(x!=fa[x]){ fa[x]=leader(fa[x]); } returnfa[x]; } voidjoin(intx,inty){ x
  • 2024-10-11消息队列详细介绍、工作原理,kafka与RocketMQ的比对
    消息队列:当一个服务处理量为100,而另一个服务发送量为200,这时候多余的消息会被丢弃,如果想要全部处理,我们必须加入队列,这个队列用来存储消息的信息,通过offset表示当前处理的位置。注意此时队列还位于进程中,也就是服务进程,我们的进程一旦挂掉,未被处理的消息会直接丢失,我们不希望
  • 2024-10-01Linux 部署Zookeeper集群详解
    Zookeeper是一个分布式协调服务,它可以用来解决分布式系统中的很多问题,如配置管理、分布式锁、集群管理等。以下是如何在Linux环境下部署Zookeeper集群的详细步骤,以及Zookeeper集群的工作原理和选举原理。Zookeeper集群工作原理Zookeeper集群由一个领导者(Leader)和多个跟随
  • 2024-09-29Kafka:架构与核心机制
    ApacheKafka是一种高吞吐量的分布式消息队列,广泛应用于实时数据流处理和大数据架构中。本文将详细探讨Kafka的架构、Replica管理、消息读取、分区策略、可靠性保障等核心机制。1.Kafka的架构1.1组件概述Kafka的架构由多个组件构成,主要包括以下部分:Broker:Kafka
  • 2024-09-28RocksDB代码分析——写入流程
    分析均基于v6.27.3。以下流程为了方便理解均经过了简化。首先,我们通过调用DB::Open来创建数据库,它返回了一个DB*。DB::Open内部调用了DBImpl::Open,在里面构造了一个DBImpl*并转换成DB*返回。所以我们拿到的DB*其实是DBImpl*。然后我们调用DB::Put来写入数据。DB::Put是个virtual
  • 2024-09-25ZooKeeper 学习笔记
    概述ZooKeeper是一个分布式协调服务,其设计初衷是为分布式软件提供一致性服务。ZooKeeper提供了一个类似Linux文件系统的树形结构,ZooKeeper的每个节点既可以是目录,也可以是数据,同时ZooKeeper提供了对每个节点的监控与通知机制。基于ZooKeeper的一致性服务,可以方便地实现
  • 2024-09-24Raft总结
    Raft算法State所有server都有的持久化状态先存储,然后响应RPCcurrentTerm当前任期,初始为0,单调递增votedFor当前任期投票给谁了,没有就是nulllog[]日志条目,每个条目都包含命令、Leader收到条目时的任期,第一个条目的index为1所有server都有的Volatilestate
  • 2024-09-24Lab3 Raft
    Lab3Raft1.GettingStarted代码位置:基础框架代码位置:src/raft/raft.go测试代码:src/raft/test_test.go建议测试时使用-race2.Thecode向raft/raft.go添加代码来实现Raft。实现必须支持以下接口//创建一个RaftServerrf:=Make(peers,me,persister,applyC
  • 2024-09-24Lab3 记录
    Part3A:leaderelection1.选举主要流程新服务器加入集群服务器在启动时状态是Follower。只要持续接收到Leader或Candidate的心跳信息,就继续保持Follower状态。开始选举每个Server都有一个随机的选举超时时间,选举超时在一个固定区间内随机选择(例如,150-300毫秒)如果Follo
  • 2024-09-18外包干了2年,技术退步明显。。。
    前言简单的说下,我大学的一个同学,毕业后我自己去了自研的公司,他去了外包,快两年了我薪资、技术各个方面都有了很大的提升,他在外包干的这两年人都要废了,技术没一点提升,学不到任何东西,一直都在点点点,其实感觉挺可惜的,毕竟我和他关系还算不错!前段时间他和我说了下,说不能在废下去了
  • 2024-09-15中间件知识点-消息中间件(Kafka)二
    Kafka一、Kafka介绍及基本原理kafka是一个分布式的、支持分区的、多副本、基于zookeeper的分布式消息系统/中间件。kafka一般不会删除消息,不管这些消息有没有被消费。只会根据配置的日志保留时间(log.retention.hours)确认消息多久被删除,默认保留最近一周的日志消息(日志
  • 2024-09-15分布式学习:Raft算法以及具体实现
    Raft算法一致性算法的要求:安全性,网络延迟、分区、丢包、重复和乱序等错误需要保证正确可用性:集群中只需要大多数机器即可运行不依赖时序保证一致性三种状态:follower,candidate,leader任期:逻辑时钟的作用,每一段任期从一次选举开始分票可能会导致一个任期没有leader用
  • 2024-09-14kafka集群架构设计原理详解
    目录从Zookeeper数据理解Kafka集群工作机制Kafka的Zookeeper元数据梳理1、zookeeper整体数据2、ControllerBroker选举机制3、LeaderPartition选举机制4、LeaderPartition自动平衡机制5、Partition故障恢复机制6、HW一致性保障-Epoch更新机制7、总结从Zookeeper