Kafka参数了解
Kafka配置参数完整说明
1. 基础配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| broker.id | broker的唯一标识符 | 每个节点唯一的整数 | 1 |
| delete.topic.enable | 是否允许删除topic | true | true |
| listeners | broker监听地址 | SASL_PLAINTEXT://host:9092 | SASL_PLAINTEXT://172.24.77.15:9092 |
| advertised.listeners | 对外发布的监听地址 | SASL_PLAINTEXT://public_ip:9092 | SASL_PLAINTEXT://172.24.77.15:9092 |
| log.dirs | 日志数据目录 | /data/kafka/data | /data/kafka/data |
| zookeeper.connect | ZK连接字符串 | host1:2181,host2:2181,host3:2181 | 172.24.77.10:2181,172.24.77.11:2181,172.24.77.12:2181 |
2. 安全配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| security.protocol | 安全协议 | SASL_PLAINTEXT | SASL_PLAINTEXT |
| sasl.mechanism.inter.broker.protocol | broker间通信认证机制 | SCRAM-SHA-256 | SCRAM-SHA-256 |
| sasl.enabled.mechanisms | 启用的认证机制 | SCRAM-SHA-256,PLAIN | SCRAM-SHA-256,PLAIN |
| allow.everyone.if.no.acl.found | 无ACL时允许所有操作 | false | true(测试环境) |
| super.users | 超级用户列表 | User:admin | User:super |
| authorizer.class.name | 授权器类名 | kafka.security.auth.SimpleAclAuthorizer | kafka.security.auth.SimpleAclAuthorizer |
3. 网络配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| num.network.threads | 网络线程数 | 3-5 | 3 |
| num.io.threads | IO线程数 | 8 | 8 |
| socket.send.buffer.bytes | 发送缓冲区大小 | 10485760 (10MB) | 102400 (100KB) |
| socket.receive.buffer.bytes | 接收缓冲区大小 | 10485760 (10MB) | 102400 (100KB) |
| socket.request.max.bytes | 请求最大大小 | 104857600 (100MB) | 104857600 (100MB) |
| replica.socket.receive.buffer.bytes | 副本复制接收缓冲区 | 1048576 (1MB) | 65536 (64KB) |
4. 主题和分区配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| num.partitions | 默认分区数 | 3 | 3 |
| default.replication.factor | 默认副本因子 | 3 | 3 |
| min.insync.replicas | 最小同步副本数 | 2 | 2 |
| auto.create.topics.enable | 是否自动创建主题 | false | true |
| offsets.topic.replication.factor | offsets主题副本因子 | 3 | 3 |
5. 性能调优参数
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| num.replica.fetchers | 副本拉取线程数 | 3 | 3 |
| replica.fetch.max.bytes | 副本拉取最大字节数 | 1048576 (1MB) | 1048576 (1MB) |
| replica.lag.time.max.ms | 副本最大延迟时间 | 5000 (5秒) | 10000 (10秒) |
| replica.fetch.wait.max.ms | 副本拉取最大等待时间 | 1000 (1秒) | 1000 (1秒) |
| log.flush.interval.messages | 刷盘消息数阈值 | 10000 | 10000 |
| log.flush.interval.ms | 刷盘时间间隔 | 1000 (1秒) | 1000 (1秒) |
6. 日志管理
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| log.retention.hours | 日志保留时间 | 168 (7天) | 168 (7天) |
| log.segment.bytes | 日志片段大小 | 1073741824 (1GB) | 1073741824 (1GB) |
| log.retention.check.interval.ms | 日志清理检查间隔 | 300000 (5分钟) | 300000 (5分钟) |
| log.cleanup.policy | 日志清理策略 | delete | delete |
| log.message.timestamp.type | 消息时间戳类型 | LogAppendTime | LogAppendTime |
7. 事务和幂等性配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| transaction.state.log.replication.factor | 事务主题副本因子 | 3 | 3 |
| transaction.state.log.min.isr | 事务主题最小ISR | 2 | 2 |
| unclean.leader.election.enable | 是否允许非ISR副本成为leader | false | false |
8. 其他配置
| 参数名 | 说明 | 推荐值 | 参考值 |
|---|---|---|---|
| group.initial.rebalance.delay.ms | 消费组初始重平衡延迟 | 3000 (3秒) | 3000 (3秒) |
| broker.rack | broker机架信息 | rack1 | kafka-rac1 |
| message.max.bytes | 消息最大大小 | 1000012 (≈1MB) | 1000012 (≈1MB) |
| zookeeper.connection.timeout.ms | ZK连接超时时间 | 18000 (18秒) | 18000 (18秒) |
| zookeeper.session.timeout.ms | ZK会话超时时间 | 18000 (18秒) | 12000 (12秒) |
相关文章:
Kafka参数了解
Kafka配置参数完整说明 1. 基础配置 参数名说明推荐值参考值broker.idbroker的唯一标识符每个节点唯一的整数1delete.topic.enable是否允许删除topictruetruelistenersbroker监听地址SASL_PLAINTEXT://host:9092SASL_PLAINTEXT://172.24.77.15:9092advertised.listeners对外发…...
sql专题 之 where和join on
文章目录 前言where介绍使用过滤结果集关联两个表 连接外连接内连接自然连接 使用inner join和直接使用where关联两个表的区别总结 前言 从数据库查询数据时,一张表不足以查询到我们想要的数据,更多的时候我们需要联表查询。 联表查询我们一般会使用连接…...
day12:版本控制器
版本控制 使用到的命令: ls -al查看当前目录下的文件及文件夹mkdir新建目录rm -rf递归强制删除文件夹 一、安装配置 1、下载地址 Git 2、初始配置 #用户名 git config --global user.name "自定义用户名" #邮箱(公司的联系方式--追责&…...
第四十一章 Vue之初识VueX
目录 一、引言 1.1. vuex的概念 1.2. vuex使用场景 1.3. 优势 二、创建演示项目 2.1. 构建项目步骤 2.2. 项目最终生成结构 2.3. 创建项目文件 2.3.1. App.vue 2.3.2. Son1.vue 2.3.3. Son2.vue 三、创建一个空仓库 3.1. 安装vuex 3.2. 新建仓库 3.3. 挂载仓库…...
GIT的基本使用与进阶
GIT的简单入门 一.什么是git? Git 是一个开源的分布式版本控制系统,用于跟踪文件更改、管理代码版本以及协作开发。它主要由 Linus Torvalds 于 2005 年创建,最初是为 Linux 内核开发而设计的。如今,Git 已经成为现代软件开发中…...
【Linux系统】—— 基本指令(二)
【Linux系统】—— 基本指令(二) 1 「alias」命令1.1 「ll」命令1.2 「alias」命令 2 「rmdir」指令与「rm」指令2.1 「rmdir」2.2 「rm」2.2.1 「rm」 删除普通文件2.2.2 「rm」 删除目录2.2.3 『 * 』 通配符 3 「man」 指令4 「cp」 指令4.1 拷贝普通…...
MFC工控项目实例三十实现一个简单的流程
启动按钮夹紧 密闭,时间0到平衡 进气,时间1到进气关,时间2到平衡关 检测,时间3到平衡 排气,时间4到夹紧开、密闭开、排气关。 相关代码 void CSEAL_PRESSUREDlg::OnTimer_2(UINT nIDEvent_2) {// if (nIDEvent_21 &am…...
【Android、IOS、Flutter、鸿蒙、ReactNative 】文本点击事件
Android Studio 版本 Android Java TextView 实现 点击事件 参考 import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.TextView; import android.widget.Toast;public c…...
json转excel,读取json文件写入到excel中【rust语言】
一、rust代码 将json文件写入到 excel中。(保持json :key原始顺序) use indexmap::IndexMap; use serde::Deserialize; use serde_json::{Value, from_str}; use std::error::Error; use std::io::{self, Write}; use std::path::{Path}; u…...
Java面试要点06 - static关键字、静态属性与静态方法
本文目录 一、引言二、静态属性(Static Fields)三、静态方法(Static Methods)四、静态代码块(Static Blocks)五、静态内部类(Static Nested Classes)六、静态导入(Static…...
动态规划-背包问题——416.分割等和子集
1.题目解析 题目来源 416.分割等和子集——力扣 测试用例 2.算法原理 1.状态表示 这里背包问题基本上和母题的思路大相径庭,母题请见 [模板]01.背包 ,这里的状态表示与装满背包的情况类似,第二个下标就是当选择的物品体积直接等于j时是否可…...
Pr:视频过渡快速参考(合集 · 2025版)
Adobe Premiere Pro 自带七组约四十多个视频过渡 Video Transitions效果,包含不同风格和用途,可在两个剪辑之间创造平滑、自然的转场,用来丰富时间、地点或情绪的变化。恰当地应用过渡可让观众更好地理解故事或人物。 提示: 点击下…...
网络安全---安全见闻2
网络安全—安全见闻 拓宽视野不仅能够丰富我们的知识体系,也是自我提升和深造学习的重要途径!!! 设备漏洞问题 操作系统漏洞 渗透测试视角:硬件设备上的操作系统可能存在各种漏洞,攻击者可以利用这些漏洞…...
解决因为TortoiseSVN未安装cmmand line client tools组件,导致idea无法使用svn更新、提交代码
一.错误信息 1.更新代码时:SVN: 更新错误 找不到要更新的版本管理目录。 2.提交代码:检测不到任何更新(实际上有代码修改)。 3.Cannot run program "svn"。 二.原因分析 在电脑上新安装的的客户端TortoiseSVN、ide…...
Ubuntu 20.04安装CUDA 11.0、cuDNN 8.0.5
不知道咋弄的ubuntu20.04电脑的cuda驱动丢了,无奈需装PyTorch环境,只有CUDA11.0以上版本才支持Ubuntu20.04,所以安装了CUDA11.0、cuDNN8.0.5 为防止频繁在浏览器检索对应的贴子,今天记录一下。 一. 驱动安装 为防止驱动安装后没…...
鸿蒙 APP 发布上架
证书创建与打包: https://developer.huawei.com/consumer/cn/doc/app/agc-help-releaseharmony-0000001933963166 不同环境多渠道打包: //todo 备案相关 一、除了发布应用商店以外,还有3个渠道,都适合小规模内测。 【1】开放式测试:发给指定白名单用户 【2】发布企业内…...
【C++笔记】C++三大特性之继承
【C笔记】C三大特性之继承 🔥个人主页:大白的编程日记 🔥专栏:C笔记 文章目录 【C笔记】C三大特性之继承前言一.继承的概念及定义1.1 继承的概念1.2继承的定义1.3继承基类成员访问方式的变化1.4继承类模板 二.基类和派生类间的转…...
如何在CentOS 7上搭建SMB服务
如何在CentOS 7上搭建SMB服务 因项目测试需求,需要自行搭建SMB服务,**SMB(Server Message Block)**协议是一种常用的文件共享方式,它可以让不同操作系统之间共享文件、打印机等资源。本文将带你一步步搭建一个简单的S…...
linux详解,基本网络枚举
基本网络枚举 一、基本网络工具 ifconfig ifconfig是一个用于配置和显示网络接口信息的命令行工具。它可以显示网络接口的P地址、子网掩码、MC地址等信息,还可以用于启动、停止或配置网络接口。 ip ip也是用于查看和管理网络接口的命令。 它提供了比ifconfig更…...
5G智能对讲终端|北斗有源终端|北斗手持机|单兵|单北斗
在当今这个快速发展的数字化时代,5G技术的广泛应用正以前所未有的速度推动着各行各业的变革。作为这一技术浪潮中的重要一环,5G智能终端QM630D凭借其卓越的性能和多样化的功能,在林业、渔业、安保、电力、交通等多个领域展现出了巨大的应用潜…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
抽象类和接口(全)
一、抽象类 1.概念:如果⼀个类中没有包含⾜够的信息来描绘⼀个具体的对象,这样的类就是抽象类。 像是没有实际⼯作的⽅法,我们可以把它设计成⼀个抽象⽅法,包含抽象⽅法的类我们称为抽象类。 2.语法 在Java中,⼀个类如果被 abs…...
