ICode9

精准搜索请尝试: 精确搜索
  • 面试官问我zookeeper选举过程,我当场给他讲了源码2022-01-13 23:01:54

    微信公众号:运维开发故事,作者:郑哥 集群概述 zookeper 在生产环境中通常都是通过集群方式来部署的,以保证高可用, 下面是 zookeeper 官网给出的一个集群部署结构图:从上图可以得出, zookeeper server 的每个节点都和主节点保持通讯的,每个节点上面都存储有数据和日志的备份,只有当

  • 面试官上来就问 ZAB 协议,瑟瑟发抖…2022-01-13 22:59:01

    微信公众号:运维开发故事,作者:郑哥 Zookeeper 是通过 ZAB 一致性协议来实现分布式事务的最终一致性。 ZAB 协议介绍 ZAB 全称为 Zookeeper Atomic Broadcast(Zookeeper 原子广播协议) ZAB 协议是为分布式协调服务ZooKeeper专门设计的一种支持崩溃恢复的一致性协议。基于该协议,Z

  • 【消息队列面试】6-10:Rebalance机制、副本同步机制、架构设计、zk的作用、kafka的高性能2022-01-12 22:02:37

    六、简述kafka的Rebalance【偏向实战,有难度】 1、背景 kafka日志:在消息量大、高并发时,经常会出现rebalance中 rebalance会影响kafka性能,会阻塞partition的读写操作 2、了解其机制,以避免rebalance的发生    3、Rebalance是什么 coordinator:leader节点所在的broker,作为一个协调者

  • chapter6 协调服务系统Zookeeper2022-01-11 19:31:43

    目录1 设计思想1.1 数据模型1.2 Client API2 体系架构3 工作原理3.1 领导者选举3.2 读写请求流程4 容错机制5 典型示例5.1 命名服务5.2 集群管理5.3 配置更新5.4 同步控制 ZooKeeper:轻量级的分布式系统,用于解决分布式应用中通用的协作问题。 1 设计思想 MapReduce1.0架构的JobTra

  • 6.824 raft算法与lab22022-01-09 19:34:50

    0. 序 继续回来填6.824的坑。 1. 关于raft算法 不认可处理removed server来捣乱的方法(好像确实可以,论文中的做法是server会丢掉requestVote,并且不更新term,如果server在minimun election timeout的时间内收到了leader的消息。我之前想到partition网络恢复时也许这个会造成问

  • kafka集群搭建2022-01-06 23:35:33

    kafka相关术语 Producer: 消息生产者,就是向kafka broker发消息的客户端 Consumer: 消息消费者,向kafka broker取消息的客户端 Consumer Group(简称"CG"):消费者组 Broker:一台kafka服务器就是一个broker,一个集群由多个broker组成,一个broker可以容纳多个topic Topic: 可以理解为一个队

  • 腾讯三面:说说Kafka的分区状态机的实现原理?2022-01-03 22:04:17

    PartitionStateMachine分区状态转换实现 1 我为何读这源码? PartitionStateMachine,分区状态机负责管理Kafka分区状态的转换,类似ReplicaStateMachine。 很多面试官都爱问Leader选举策略。学完本文,你不但能说出4种Leader选举场景,还能总结出它们的共性。 2 简介 PartitionStateM

  • Kafka 具体分析2022-01-03 12:33:57

    前面的相关文件简要地介绍了 Kafka 的基本使用,本文将将要介绍一下关于 Kafka 的集群关系、存储结构以及架构方面的内容进行简要的解析 组件之间的关系 Kafka 中,各个组件之间的关系如下图所示: ​ 每个组件的解释如下: Producer:生产者,实际产生消息的角色 Topic:直接翻译过来就是 “

  • process mngr misc2022-01-03 11:34:49

    process mngr misc PID/TGID/PGID/SID PID:在ps cmd里显示的pid是进程id,它对应kernel task_struct里的tgid成员。task_struct里的pid_t pid成员是线程id,task_struct里的tgid是thread group id,即主线程的id,也即ps cmd里说的进程id。对于主线程,其task_struct里的pid和tgid成员相等 TG

  • Kafka(六).高级架构2022-01-02 20:02:11

    Kafka 高级架构 一 .简介 kafka 的 topic 被分为多个分区,分区的数据是按照Segments 也就是分段来存储文件块。分区日志是存储在磁盘上的日志序列。kafka 可以保证的是一个分区里面的事件是有序的。其中 leader 负责对应分区的读写。Follower负责同步分区的数据。0.11 版本之

  • 【GRNN预测】基于鲸鱼算法优化广义回归神经网络实现数据预测Matlab代码2022-01-02 16:34:31

    1 简介 ​为实现精准施肥"减施增效"的数字化农业施肥技术,本文基于并运用了鲸鱼算法,对广义回归神经网络(GRNN)进行了结合与改进,并构建作物广义回归神经网络(GRNN)结合遗传算法的预测施肥量模型.通过采集得到的数据样本会被用来输入MATLAB进行仿真和实验验证.仿真和实验结果表

  • Zookeeper之ZAB协议2021-12-31 16:31:55

    概念: 可能很多人会认为zoookeeper就是paxos算法的一个实现,但事实上,zookeeper并没有完全采用paxos算法,而是使用了一种称为Zookeeper Atomic Broadcast(ZAB,Zookeeper原子消息广播协议)的协议作为其数据一致性的核心算法。 ZAB协议并不像Paxos算法那样是一种通用的分布式一致性算

  • Kafka高可用,高吞吐量低延迟的高并发的特性背后实现机制2021-12-29 17:06:00

    1 概述 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式消息系统,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。 2 消息系统介绍 一个消息系统负责将数据从一个应用传递到另外一个应用,应用只需关注于数据,无需关注

  • Kafka的生产者与消费者解析2021-12-29 10:31:39

    一、生产者 1.分区策略 分区的原因 (1) 方便在集群中扩展 ,每个 Partition 可以通过调整以适应它所在的机器,而一个 topic 又可以有多个 Partition 组成,因此整个集群就可以适应任意大小的数据了。 (2) 可以提高并发 ,因为可以以 Partition 为单位读写了。 分区

  • 消费者协调器和组协调器(十二)2021-12-26 17:07:14

    消费者协调器和组协调器       了解了 Kafka 中消费者的分区分配策略之后是否会有这样的疑问:如果消费者客户端中配置了两个分配策略,那么以哪个为准呢?如果有多个消费者,彼此所配置的分配策略并不完全相同,那么以哪个为准?多个消费者之间的分区分配是需要协同的,那么这个协同的过程

  • Raft算法2021-12-26 13:37:54

    Raft算法 根据官方文档解释,一个 Raft 集群包含若干节点,Raft 把这些节点分为三种状态:Leader、 Follower、Candidate,每种状态负责的任务也是不一样的。正常情况下,集群中的节点只存在 Leader 与 Follower 两种状态。 • Leader(领导者) :负责日志的同步管理,处理来自客户端的请求,与Follow

  • GBase 8c Raft协议学习(一)2021-12-25 09:35:17

    Raft算法概述 1、三种角色 Raft是一个用于管理日志一致性的协议。它将分布式一致性分解为多个子问题:Leader选举(Leader election)、日志复制(Log replication)、安全性(Safety)、日志压缩(Log compaction)等。同时,Raft算法使用了更强的假设来减少了需要考虑的状态,使之变的易于理解和

  • GBase 8c Raft协议学习(二)2021-12-25 09:34:09

    Leader选举 1、Leader选举的过程 Raft 使用心跳(heartbeat)触发Leader选举。当服务器启动时,初始化为Follower。Leader向所有Followers周期性发送heartbeat。如果Follower在选举超时时间内没有收到Leader的heartbeat,就会等待一段随机的时间后发起一次Leader选举。 每一个followe

  • GBase 8c Raft协议学习(五)2021-12-25 09:31:44

    日志压缩 在实际的系统中,不能让日志无限增长,否则系统重启时需要花很长的时间进行回放,从而影响可用性。Raft采用对整个系统进行snapshot来解决,snapshot之前的日志都可以丢弃(以前的数据已经落盘了)。 每个副本独立的对自己的系统状态进行snapshot,并且只能对已经提交的日志记录进

  • GBase 8c Raft协议学习(七)2021-12-25 09:30:00

    关于Raft的一些问题 1、Raft分为哪几个部分? 主要是分为leader选举、日志复制、日志压缩、成员变更等。 2、Raft中任何节点都可以发起选举吗? Raft发起选举的情况有如下几种: " 刚启动时,所有节点都是follower,这个时候发起选举,选出一个leader; " 当leader挂掉后,时钟最先跑完的foll

  • MIT 6.824 Raft论文精读(未完待续)2021-12-24 10:02:07

    文章目录 IntroductionRaft Consensus AlgorithmRaft BasicsLeader ElectionLog ReplicationSafetyElection RestrictionCommitting Entries From Previous Terms Follower and Candidate CrashesTiming and Availability 本文主要对raft协议的相关论文进行了总结。 Int

  • Raft算法_SOFAJRaft源码学习_(二、选主源码分析)2021-12-24 09:32:03

    上篇回顾:Raft算法_SOFAJRaft源码学习_(一、背景及选主演示) 概览 Counter演示程序的构成,可以参考官方文档: https://www.sofastack.tech/projects/sofa-jraft/counter-example/ CounterServer是主启动入口,进去以后就进行了相关的配置,最后调用了集群的start方法,启动集群: // 启动 th

  • kafka学习之-server.properties详细说明2021-12-23 22:37:46

    每个kafka broker中配置文件server.properties默认必须配置的属性如下: broker.id=0num.network.threads=2num.io.threads=8socket.send.buffer.bytes=1048576socket.receive.buffer.bytes=1048576socket.request.max.bytes=104857600log.dirs=/tmp/kafka-logsnum.partitions=2log.

  • Kafka学习之一深度解析2021-12-23 22:37:14

    背景介绍 Kafka简介   Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输 支持Kafka Serv

  • Raft算法_SOFAJRaft源码学习_(一、背景及选主演示)2021-12-23 11:31:48

    背景 raft算法原理,建议参考raft官网:https://raft.github.io/ 强烈推荐观看raft的流程动画,方便直观理解算法过程 动画地址:http://thesecretlivesofdata.com/raft/ 本系列通过阅读SofaJRaft源码,并在本地运行SofaJRaft自带的Counter演示程序,学习了解raft算法在工程中的具体实现。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有