06、Kafka ------ 各个功能的作用解释(ISR 同步副本、非同步副本、自动创建主题、修改主题、删除主题)
目录
- CMAK 各个功能的作用解释
- ★ ISR副本 (同步副本)
- ★ 非同步副本
- ★ 自动创建主题
- ★ 修改主题
- ★ 删除主题
CMAK 各个功能的作用解释
★ ISR副本 (同步副本)
简单来说 ,ISR 副本 就是 Kafka 认为与 领导者副本 同步的副本。
ISR(In Sync Replicas )副本就是Kafka认为与领导者副本的数据同步的副本,根据该定义可看出,领导者副本天然就是ISR副本,毕竟它自己与自己肯定是同步的。甚至在某些情况下,ISR副本集中只有领导者一个副本。
判断一个副本是否符合ISR标准,取决于server.properties文件中replica.lag.time.max.ms配置参数,
该参数的默认值为30000(即30s),Kafka建议将该参数配置在10~30s之间
▲只要一个追随者副本滞后领导者副本的时间不连续超过replica.lag.time.max.ms 参数值,那Kafka就认为该追随者副本满足ISR标准。
就是追随者副本要在30s之内与领导者副本有进行数据同步的操作,这个副本才能被称为 ISR 同步副本。
追随者分区,基本上我们的程序是没办法直接去操作它的,因为追随者分区只是领导者分区的一个后备,因此,追随者分区会自动的和领导者分区保持数据的一致,进行数据同步。
就是这个:

在 server.properties 文件里面添加这个配置。
追随者副本要在20s之内与领导者副本进行同步数据的操作

每个节点都加上这个配置

Kafka官方文档
对这个配置的解释:

领导者分区有几个追随者分区,取决于我们设置的复制因子有多少,如果复制因子是3,那么就意味着每个领导者分区 2个 追随者分区。
复制因子是3 ,就表明有3个分区,其中1个是领导者分区,2个是追随者分区。
★ 非同步副本
默认:非同步副本不应该被选作领导者副本。
Kafka将所有不符合ISR的副本称为非同步副本。
通常而言,非同步副本落后领导者副本太多,当领导者副本挂掉时,非同步副本不适合被选举成领导者副本,否则会造成数据丢失,这也是Kafka的默认设置。
▲ 剥夺了非同步副本被选为领导者副本的资格,势必会造成可用性降低的问题。
比如将复制因子设为4,这意味着一个分区有1个领导者副本和3个追随者副本,
当领导者副本挂掉时,有可能这3个追随者副本都不符合ISR标准,那就没法选出新的领导者副本了,那这个分区就不可用了。
▲ 启用“非同步副本被选为领导者副本”
将 unclean.leader.election.enable 参数 设为 true 即可开启 “Unclean领导者选举”——允许非同步副本被选为领导者副本。
【注意】:开启“Unclean领导者选举”可以提高Kafka的可用性,但可能会造成数据丢失。

要开启的话,可以在配置文件中配置开启:
开启这个,在 Kafka 没有 ISR 同步副本可选的情况下,才会在非同步副本里面选择一个作为领导者副本。

★ 自动创建主题
当发送消息的主题不存在且希望Kafka能自动创建主题时,可在config/server.properties文件中增加如下配置:
设置是否允许自动创建主题(原默认值为true)
allow.auto.create.topics=true
设置自动创建主题时默认的复制因子为3(原默认值为1)
default.replication.factor=3
设置自动创建主题时默认默认分区数(原默认值为1)
num.partitions=2

把设置也添加进去:

★ 修改主题
如果要修改主题的分区数、复制因子、以及额外配置参数等,可使用kafka-topics.bat命令的–alter选项,例如如下命令:
kafka-topics.bat --alter ^
–bootstrap-server localhost:9092 ^
–partitions 5 ^
–topic test1
上面命令将test1主题的分区数改为5,
test1 这个 kafka 主题节点,原本是3个分区

修改分区数量:
记得要指定修改哪个broker节点,这里是修改端口号为 9092的kafka节点。

修改成功

★ 删除主题
如果要删除主题,则使用kafka-topics.bat的–delete选项,例如如下命令可删除test1主题。
kafka-topics.bat --delete ^
–bootstrap-server localhost:9092 ^
–topic test1
删除该主题后,该主题所包含的全部分区被删除、该主题下的所有消息也被删除了。

CMAK 界面删除主题:

命令删除主题:

按理说这个test1应该是被删除掉的,现在还存在,先不理。

直接界面删除,感觉没删除干净,先不理这个,后续再研究。

相关文章:
06、Kafka ------ 各个功能的作用解释(ISR 同步副本、非同步副本、自动创建主题、修改主题、删除主题)
目录 CMAK 各个功能的作用解释★ ISR副本 (同步副本)★ 非同步副本★ 自动创建主题★ 修改主题★ 删除主题 CMAK 各个功能的作用解释 ★ ISR副本 (同步副本) 简单来说 ,ISR 副本 就是 Kafka 认为与 领导者副本 同步的副本。 ISR࿰…...
Spring Security实现详解
一、WebSecurityConfigurerAdapter 总配置类: 1、介绍:配置类 2、主要方法: (1)configure(HttpSecurity http) protected void configure(HttpSecurity http) throws Exception {this.logge…...
⭐Unity LeapMotion与手的相关开发
LeapMotion 官方文档中文翻译帮助手册教程 Hand 一个Hand手对象表示了一个跟踪的手,一个手总是包含5个手指以及相关属性如:Direction,PalmPosition,和Basis(orientation). lamPosition :手掌中心到Leap设备原点以毫米测量的距离 PalmVelocity :手掌移…...
React16源码: React中的update和updateQueue的源码实现
React中的update和updateQueue 1 )概述 在 ReactDOM.render 过程中,还需要创建一个 update 对象update 用于记录组件状态的改变的一个对象,它存放于Fiber对象的 updateQueue 中updateQueue,它是一个单向链表的结构,一…...
mybatisplus(service CRUD 接口)
一、我们在控制器层都是调用Service层,不会直接调用仓储层。现在我给大家介绍一下怎么快速实现Service 的CRUD 定义接口:IProductService 继承IService<实体> package com.saas.plusdemo;import com.baomidou.mybatisplus.extension.service.ISe…...
GC6109——双通道5V低电压步进电机驱动芯片,低噪声、低振动,应用摄像机,机器人等产品中
GC6109是双通道5V低电压步进电机驱动器,具有低噪声、低振动的特点,特别适用于相机的变焦和对焦系统,万向节和其他精密、低噪声的STM控制系统。该芯片为每个通道集成了256微步驱动器。带SPl接口,用户可以方便地调整驱动器的参数。内…...
MySQL-多表联合查询
🎉欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹 ✨博客主页:小小恶斯法克的博客 🎈该系列文章专栏:重拾MySQL 🍹文章作者技术和水平很有限,如果文中出现错误&am…...
商城小程序(8.购物车页面)
目录 一、商品列表区域1、渲染购物车商品列表的标题区域2、渲染商品列表区域的基本结构3、为my-goods组件封装radio勾选状态4、为my-goods组件封装radio-change事件5、修改购物车中商品的选择状态6、为my-goods组件封装NumberBox7、为my-goods封装num-change事件8、修改购物车商…...
[Vulnhub靶机] DC-1
[Vulnhub靶机] DC-1靶机渗透思路及方法(个人分享) 靶机下载地址: https://download.vulnhub.com/dc/DC-1.zip 靶机地址:192.168.67.28 攻击机地址:192.168.67.3 一、信息收集 1.使用 arp-scan 命令扫描网段内存活的…...
【springboot 中集成 knife4j 时,报错 No mapping for GET /doc.html】
出现这种情况可能是项目中含有继承WebMvcConfigurationSupport的类,这会导致 swagger 配置失效。 解决方法,继承WebMvcConfigurationSupport下重写addResourceHandlers方法 Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry)…...
C++ 具名要求-全库范围的概念 -谓词(Predicate)-二元谓词(BinaryPredicate)
此页面中列出的具名要求,是 C 标准的规范性文本中使用的具名要求,用于定义标准库的期待。 某些具名要求在 C20 中正在以概念语言特性进行形式化。在那之前,确保以满足这些要求的模板实参实例化标准库模板是程序员的重担。若不这么做…...
MyBatis-Plus不写任何resultMap和SQL执行一对一、一对多、多对多关联查询
MyBatis-Plus不写任何resultMap和SQL执行一对一、一对多、多对多关联查询 MyBatis-Plus不写任何resultMap和SQL执行一对一、一对多、多对多关联查询 com.github.dreamyoung mprelation 0.0.3.2-RELEASE 注解工具使用优缺点: 优点: 使用简单…...
arcgis javascript api4.x加载天地图web墨卡托(wkid:3857)坐标系
效果: 示例代码: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv&quo…...
中职组安全-win20230217-环境-解析
*任务说明: 仅能获取win20230217的IP地址 用户名:test,密码:123456 访问服务器主机,找到主机中管理员名称,将管理员名称作为Flag值提交; john 访问服务器主机,找到主机中补丁信息,将补丁编号作为Flag值提交ÿ…...
PMP学习考试经验总结
PMP备考日程计划表 我的PMP的备考大概花了三个月的时间, 可以分为以下几个阶段: Week 1-4: 读完PMBoK 前面7个知识领域(中英文版PMBoK一起看)。每看完一个知识领域,就看参考书里面的相应章节(汪博士那本)…...
leetcode206.反转链表
https://leetcode.cn/problems/reverse-linked-list/description/ 题目 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入&am…...
python每日学17:控制推导逻辑的子表达式不要超过两个
背景:今天放假在家,《python学习手册》不在身边,所以今天学习《Effective Python: 编写高质量Python代码的90个有效方法》第28条《控制推导逻辑的子表达式不要超过两个》,这本书已经是第二版了,第一版是《编写高质量py…...
地质时间与数值模拟时间转换(mm/Ma-->m/s)
一百万年(1Ma)等于315,576,000,0003.15576e11秒。 计算方法如下: 一年通常定义为365天(非闰年)。每天有24小时。每小时有60分钟。每分钟有60秒。 所以,一年的秒数为: 365天 24小时/天 60分钟/小时 60秒/分钟 31…...
linux文件描述符管理
在实际的项目开发中,文件描述符是经常用到的并且在释放资源过程中也是很容易忽略的,使用之后不释放就会增加cpu负担,无异于内存泄漏;所以时刻掌握文件描述符的状态是非常重要的!下面介绍文件描述符的管理方法。 1. 文…...
谷歌翻译不能使用 host添加IP
谷歌浏览器翻译不能使用解决教程_142.250.100.90 translate.googleapis.com-CSDN博客...
Typora与AI结合:使用万象熔炉·丹青幻境为Markdown文档自动配图
Typora与AI结合:使用万象熔炉丹青幻境为Markdown文档自动配图 不知道你有没有过这样的体验:在Typora里写完一篇技术博客或项目文档,内容详实,逻辑清晰,但通篇下来全是文字,总觉得少了点什么。想配几张图吧…...
元宇宙拆迁队:强拆违规建筑日入十万
从Bug猎人到空间执法官当传统的软件测试工程师还在为揪出一个隐蔽的NullPointerException而欢欣鼓舞时,一片更为广阔、也更为凶险的新战场已经悄然开启——元宇宙。在这里,代码的缺陷不再仅仅导致程序崩溃或数据丢失,它们会具象化为扭曲的空间…...
AI辅助开发新体验:描述需求即可让快马AI生成智能浏览器下载插件
今天想和大家分享一个用AI辅助开发浏览器插件的实战经验。最近在InsCode(快马)平台上尝试开发了一个智能下载插件,整个过程让我深刻体会到AI如何改变传统开发流程。 需求分析 这个插件的核心目标是让下载变得更智能。传统下载工具需要我们手动选择保存位置ÿ…...
爱毕业aibiye等8款智能应用显著改善了论文撰写体验,编程与学术研究流程更加顺畅
文章总结表格(工具排名对比) 工具名称 核心优势 aibiye 精准降AIGC率检测,适配知网/维普等平台 aicheck 专注文本AI痕迹识别,优化人类表达风格 askpaper 快速降AI痕迹,保留学术规范 秒篇 高效处理混AIGC内容&…...
显卡驱动深度清理指南:用DDU解决驱动残留难题
显卡驱动深度清理指南:用DDU解决驱动残留难题 【免费下载链接】display-drivers-uninstaller Display Driver Uninstaller (DDU) a driver removal utility / cleaner utility 项目地址: https://gitcode.com/gh_mirrors/di/display-drivers-uninstaller 你是…...
40 个 AI agent 跑营销,还不是最狠的
过去一年,AI 做营销最常见的用法,还是写文案、出海报、改标题、做几个短视频脚本。大家也都看腻了。 现在,真正的变化开始了。 AI 开始往营销里最难、最费人、但又最影响结果的地方发起来进攻,那就是: 盯数据、跑测…...
数字孪生通信层开发:C#实现OPC UA到Unity3D的实时数据映射(2026年工业级实战指南)
引言:通信层不是“锦上添花”,而是“数字孪生的血脉” 在2026年的工业数字孪生战场上,OPC UA到Unity3D的数据映射延迟是决定孪生体“活”与“死”的关键。IDC 2026年工业物联网报告显示:76%的数字孪生项目因通信层延迟>100ms失…...
终极指南:3分钟掌握ControlNet-v1-1_fp16_safetensors高效AI图像控制
终极指南:3分钟掌握ControlNet-v1-1_fp16_safetensors高效AI图像控制 【免费下载链接】ControlNet-v1-1_fp16_safetensors 项目地址: https://ai.gitcode.com/hf_mirrors/comfyanonymous/ControlNet-v1-1_fp16_safetensors ControlNet-v1-1_fp16_safetensor…...
MODSERIAL:嵌入式UART高可靠缓冲与事件驱动库
1. MODSERIAL:面向嵌入式实时系统的高可靠性串行通信缓冲库MODSERIAL 是一个专为 ARM Cortex-M 系列微控制器(尤其是基于 mbed OS 和 STM32 HAL 生态)设计的轻量级、中断安全、线程安全的串行通信增强库。其核心目标并非替代标准 HAL_UART 或…...
STM32环境监测系统在烟花爆竹仓库的应用
1. 项目概述与背景烟花爆竹作为一种特殊商品,其存储环境的安全管理一直是行业痛点。传统的人工巡检方式存在明显的滞后性——我曾亲眼见过一家小型烟花仓库因为夜间温湿度骤变而引发自燃,等值班人员发现时火势已难以控制。这个基于STM32的环境监测系统正…...
