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

大数据课程I3——Kafka的消息流与索引机制

文章作者邮箱:yugongshiye@sina.cn              地址:广东惠州

 ▲ 本章节目的

⚪ 掌握Kafka的消息流处理;

⚪ 掌握Kafka的索引机制;

⚪ 掌握Kafka的消息系统语义;

一、Kafka消息流处理

1. Producer 写入消息

 流程说明:

1. producer 要向Kafka生产消息,需要先通过 zookeeper 的 "/brokers/.../state" 节点找到该 partition 的 副本leader的位置信息。
2. producer 将消息发送给该 leader。
3. leader 收到消息后,将消息写入到分区目录下的本地 log 文件中。
4. followers 从 leader pull 同步消息,将消息写入到分区目录下的 log 中。如果同步成功(将消息写入log文件成功),则向 leader 返回 ACK(确认机制)。

细节补充:

Kafka引入了一个ISR机制(概念),在Follower和Leader数据同步的过程中,

比如:

①副本-Follower

②副本-Leader

③副本-Follower

在数据同步过程中,①②同步,③出故障没有跟上。

此时①②是同一组ISR成员,③不是。

如果后续Leader挂掉了,则Kafka会从Leader的ISR组中随机选择一个Follower成为Leader。

Kafka底层有一个同步超时的时间(10s),即一个Follower在超时时间内没有反馈ACK,则人为同步失败。

由写入流程可知ISR里面的所有replica都跟上了Leader,只有ISR里面的成员才能选为Leader。对于 f+1 个replica,一个partition可以在容忍 f 个replica失效的情况下保证消息步丢失。

比如:一个分区由5个副本,挂掉4个,剩下一个副本,依然可以工作。

注意:Kafka的选举不同于zookeeper,用的不是过半选举。

5. leader 收到所有 ISR 中的 repli

相关文章:

大数据课程I3——Kafka的消息流与索引机制

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 掌握Kafka的消息流处理; ⚪ 掌握Kafka的索引机制; ⚪ 掌握Kafka的消息系统语义; 一、Kafka消息流处理 1. Producer 写入消息 流程说明: 1. producer 要向Kafka生产消息,需要先通过…...

LVGL学习笔记 28 - 键盘keyboard

目录 1. 设置关联文本框 2. 设置模式 2.1 LV_KEYBOARD_MODE_TEXT_LOWER 2.2 LV_KEYBOARD_MODE_TEXT_UPPER 2.3 LV_KEYBOARD_MODE_SPECIAL 2.4 LV_KEYBOARD_MODE_NUMBER 2.5 LV_KEYBOARD_MODE_USER_1 ~ LV_KEYBOARD_MODE_USER_4 3. 使能弹窗模式 4. 更改按键布局 5. 事…...

【Microsoft 支持】【数据库-MySql】当您尝试从大于 5000 的 TCP 端口连接时收到错误 WSAENOBUFS (10055)

​ 一、转载原文 When you try to connect from TCP ports greater than 5000 you receive the error ‘WSAENOBUFS (10055)’ Symptoms If you try to set up TCP connections from ports that are greater than 5000, the local computer responds with the following WSAE…...

【学会动态规划】最长湍流子数组(23)

目录 动态规划怎么学? 1. 题目解析 2. 算法原理 1. 状态表示 2. 状态转移方程 3. 初始化 4. 填表顺序 5. 返回值 3. 代码编写 写在最后: 动态规划怎么学? 学习一个算法没有捷径,更何况是学习动态规划, 跟我…...

【网络编程·网络层】IP协议

目录 一、IP协议的概念 二、IP协议的报头 1、四位首部长度 2、16位总长度(解包) 3、8位协议(分用) 4、16位首部校验和 5、8位生存时间 6、32位源IP和32位目的IP 7、4位版本/8位服务类型 8、16位标识 9、3位标志 10、1…...

HTML详解连载(7)

HTML详解连载(7) 专栏链接 [link](http://t.csdn.cn/xF0H3)下面进行专栏介绍 开始喽结构伪类选择器作用 :nth-child(公式)作用举例 伪元素选择器作用注意: PxCoook作用盒子模型-重要组成部分 盒子模型-边框线属性名属性…...

一文打通redis中的String类型

目录 基本介绍 基本语法 常用命令解读 概述 SETNX key value SETNX key value GETRANGE key start end GETSET key value GETBIT key offset MGET key1 [key2..] STRLEN key 基本介绍 ①String是Redis最基本的类型,一个key对应一个value。 ②String类型是二进制…...

优测云服务平台|【压力测试功能升级】轻松完成压测任务

一、本次升级主要功能如下: 1.多份报告对比查看测试结果 2.报告新增多种下载格式 Word格式Excel格式 3.新增多种编排复杂场景的控制器 漏斗控制器并行控制器事务控制器仅一次控制器分组控制器集合点 4.新增概览页面,包含多种统计维度 二、报告对比…...

UseEffect中使用setState更新后获取的值为何依然是更新前

刚开始学习React的新手经常遇到这样的问题,使用useState去更新某个数据,然后再取更新后的数据,取发现数据并没有更新。 在 React 中,useState 的更新确实是异步的,这是由 React 的内部机制所决定的。React 会对多次状…...

去掉鼠标系列之一: 语雀快捷键使用指南

其实应该是系列之二了,因为前面写了一个关于Interlij IDEA的快捷键了。 为什么要写这个了,主要是觉得一会儿用鼠标,一会儿键盘,一点儿不酷,我希望可以一直用键盘,抛开鼠标。后面陆续记录一下各个软件的快捷…...

【Linux】Reactor模式

Reactor模式 Reactor模式的定义 Reactor反应器模式,也叫做分发者模式或通知者模式,是一种将就绪事件派发给对应服务处理程序的事件设计模式。 Reactor模式的角色构成 Reactor主要由以下五个角色构成: reactor模式的角色 角色解释Handle(句…...

【LeetCode 算法】Merge Two Binary Trees 合并二叉树

文章目录 Merge Two Binary Trees 合并二叉树问题描述:分析代码PreOrder DFSPreOrder Tag Merge Two Binary Trees 合并二叉树 问题描述: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时&#…...

系统架构设计师---2017年下午试题1分析与解答(试题五)

2017年下午试题1分析与解答 试题五 阅读以下关于Web系统架构设计的叙述,在答题纸上回答问题1至问题3. 【说明】 某电子商务企业因发展良好,客户量逐步增大,企业业务不断扩充,导致其原有的B2C商品交易平台己不能满足现有业务需求。因此,该企业委托某软件公司重新开发一套…...

el-table实现静态和动态合并单元格 以及内容显示的问题

实现效果图 <el-tablev-loading"loading":data"tableData"style"width: 100%":row-class-name"tableRowClassName"size"small"><el-table-column fixed label"序号" width"50"><el-tab…...

STM32F40X系列FSMC8路驱动LCD显示屏(LY-TFT30-39P-1509 芯片hx8352)

hx8352_8080_8bit_FMSC板级驱动 1.LCD相关1.1LCD参数1.2 LCD引脚1.3 LCD实物1.4 LCD引脚解释 2.接线关系3.STM32F40x基于FMSC16bit修改1)地址偏移2)删除多余GPIO3)修改FMSC的配置4&#xff09;LCD初始化寄存器 3.板驱动程序4.运行结果 1.LCD相关 1.1LCD参数 LCD控制芯片&…...

小象课堂在线授课教育系统

此项目包含后端全部代码&#xff0c;前端包括后台和web界面的源码&#xff0c;数据库用的mysql,可当作课设或者毕设&#xff0c;还可写入自己的简历中 web界面展示&#xff1a; 前端后台界面展示&#xff1a; 用户管理 课程管理 内容配置 订单管理 系统管理 系统监控...

Android 电池容量获取

Android 原生设置电池容量是在 power_profile.xml 中配置&#xff0c;此文件默认在 frameworks 目录下&#xff0c;也可能有 overlay 目录文件。 <!-- This is the battery capacity in mAh (measured at nominal voltage) --><item name"battery.capacity"…...

无涯教程-Perl - tell函数

描述 此函数返回指定FILEHANDLE中读取指针的当前位置(以字节为单位)。如果省略FILEHANDLE,则它将返回上次访问的文件中的位置。 语法 以下是此函数的简单语法- tell FILEHANDLEtell返回值 此函数以字节为单位返回当前文件位置。 例 以下是显示其基本用法的示例代码,要检…...

【论文综述】Transformer 综述

中国科学院、东南大学等联合发表最新的视觉 Transformer 综述_中科院AI算法工程师的博客-CSDN博客 Transformer综述大全&#xff08;1&#xff09;【A Survey of Visual Transformers】_香博士的博客-CSDN博客 Transformer综述大全&#xff08;2&#xff09;【A Survey of Vi…...

博客摘录「 佛祖保佑,永无bug——springboot启动图案的修改方法」2023年6月8日

挺有意思的。佛祖保佑永无BUG 神兽护体 代码注释(各种版本)_风流 少年的博客-CSDN博客...

大模型Infra技术栈全面解析:小白程序员必备学习路径与收藏指南

大模型Infra技术栈全面解析&#xff1a;小白程序员必备学习路径与收藏指南 本文深入解析了Infra岗位招聘中的关键技术栈&#xff0c;包括编程基础、Transformer算法、分布式训练、推理优化及系统底层等。内容覆盖PyTorch、C、CUDA、并行处理、MoE、量化部署、高性能网络通信、G…...

ARM MPMC内存控制器架构与优化策略

1. ARM MPMC内存控制器架构解析在嵌入式系统设计中&#xff0c;内存控制器作为处理器与存储设备之间的桥梁&#xff0c;其性能直接影响整个系统的运行效率。ARM PrimeCell多端口内存控制器(MPMC)是一种高度可配置的IP核&#xff0c;支持与多种类型存储设备的连接&#xff0c;包…...

专业级macOS歌词同步方案:LyricsX核心功能深度解析

专业级macOS歌词同步方案&#xff1a;LyricsX核心功能深度解析 【免费下载链接】LyricsX &#x1f3b6; Ultimate lyrics app for macOS. 项目地址: https://gitcode.com/gh_mirrors/ly/LyricsX LyricsX是一款专为macOS设计的专业级歌词同步工具&#xff0c;通过智能歌词…...

科研工作流构建指南:从文献管理到论文写作的全流程工具链实践

1. 项目概述与核心价值 如果你是一名在读的硕士、博士研究生&#xff0c;或者刚刚踏入科研院所、企业研发部门的新人研究员&#xff0c;那么“如何高效地开展研究”这个问题&#xff0c;大概率会持续困扰你很长一段时间。从浩如烟海的文献中精准定位方向&#xff0c;到设计严谨…...

iPhone 5s系统工程解析:LPDDR3内存与E2NAND存储的协同进化

1. 项目概述&#xff1a;iPhone 5s&#xff0c;一场被低估的系统性工程胜利2013年9月&#xff0c;当苹果发布iPhone 5s时&#xff0c;聚光灯几乎全部打在了那个划时代的64位A7处理器上。媒体和消费者的讨论都围绕着“桌面级性能”和“移动计算新时代”展开。作为一名在消费电子…...

告别网盘限速困扰:网盘直链下载助手全面解析与应用指南

告别网盘限速困扰&#xff1a;网盘直链下载助手全面解析与应用指南 【免费下载链接】baiduyun 油猴脚本 - 一个免费开源的网盘下载助手 项目地址: https://gitcode.com/gh_mirrors/ba/baiduyun 还在为网盘下载速度缓慢而烦恼吗&#xff1f;网盘直链下载助手作为一款免费…...

保姆级避坑指南:用GGCNN源码处理Cornell抓取数据集,解决tiff文件生成失败问题

GGCNN源码实战&#xff1a;Cornell数据集预处理深度排错指南 第一次运行GGCNN的Cornell数据集预处理脚本时&#xff0c;我盯着毫无反应的终端窗口足足等了十分钟——没有进度条&#xff0c;没有错误提示&#xff0c;只有光标在无情地闪烁。这大概是每个复现论文的开发者都会经历…...

本地化AI代码助手部署指南:从模型选型到性能调优

1. 项目概述&#xff1a;一个面向开发者的本地化AI代码助手最近在GitHub上看到一个挺有意思的项目&#xff0c;叫“JPeetz/Hermes-Studio”。乍一看名字&#xff0c;可能会联想到希腊神话里的信使赫尔墨斯&#xff0c;或者某个设计软件。但点进去你会发现&#xff0c;这其实是一…...

观察taotoken用量看板如何清晰呈现各模型token消耗

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 观察taotoken用量看板如何清晰呈现各模型token消耗 对于使用大模型API的开发者或团队管理者而言&#xff0c;成本的可观测性与可控…...

5个简单步骤实现iOS虚拟定位:iFakeLocation终极解决方案

5个简单步骤实现iOS虚拟定位&#xff1a;iFakeLocation终极解决方案 【免费下载链接】iFakeLocation Simulate locations on iOS devices on Windows, Mac and Ubuntu. 项目地址: https://gitcode.com/gh_mirrors/if/iFakeLocation 你是否曾经需要在不同城市测试应用的位…...