kafka---broker相关配置
一、Broker 相关配置
1、一般配置
broker.id
当前kafka服务的sid(server id),在kafka集群中,该值是唯一的(unique),如果未设置此值,kafka会自动生成一个int值;为了防止自动生成的值与用户设置的值冲突,自动生成的逻辑是从reserved.broker.max.id + 1这个值开始。
Type: int
Default: -1
Valid Values:
Importance: high
Update Mode: read-only
reserved.broker.max.id
用户可以设置broker.id的最大值,自动生成的broker.id从reserved.broker.max.id + 1这个值开始
Type: int
Default: 1000
Valid Values: [0,…]
Importance: medium
Update Mode: read-only
broker.id.generation.enable
开启自动生成brokerid的功能
Type: boolean
Default: true
Valid Values:
Importance: medium
Update Mode: read-only
注意 1000以上的Broker ID现在默认保留为自动分配的Broker ID。如果集群的现有broker id高于该阈值,请确保相应地增加reserved.broker.max.id broker配置属性。
advertised.listeners
kafka会将该监听地址注册到zk上,同时该地址也是客户端访问地址,如果该值未设置,则将同listeners,与listeners不同的是,advertised.listeners无法使用0.0.0.0地址
Type: string
Default: null
Valid Values:
Importance: high
Update Mode: per-broker
2、 日志数据相关配置
log.dir
存储数据的目录
Type: string
Default: /tmp/kafka-logs
Valid Values:
Importance: high
Update Mode: read-only
log.dirs
逗号分隔的路径列表,用于存放数据,如果未设置,则使用log.dir
Type: string
Default: null
Valid Values:
Importance: high
Update Mode: read-only
log.flush.interval.messages
在一个日志分区( log partition)上需要达到多少个消息,才会将这些消息持久化(刷新)到磁盘上
Type: long
Default: 9223372036854775807
Valid Values: [1,…]
Importance: high
Update Mode: cluster-wide
log.flush.interval.ms
topic中的消息存放在内存中的最大时间,超过这个时间就会被刷新到磁盘上,如果未设置,就使用
log.flush.scheduler.interval.ms
Type: long
Default: null
Valid Values:
Importance: high
Update Mode: cluster-wide
log.flush.scheduler.interval.ms
log flusher检查日志是否需要刷新到磁盘的频率
3、ZK相关配置
zookeeper.connect
指定ZK服务器的连接串,格式hostname:port,为了保障高可用,一般要指定多个地址,即hostname:port,hostname1:port1,hostname2:port2;也可以在配置连接串的时候指定根路径(chroot path),即hostname1:port1,hostname2:port2,hostname3:port3/chroot/path
Type: string
Default: null
Valid Values:
Importance: high
Update Mode: read-only
zookeeper.connection.timeout.ms
kafka连接zk的超时时长,如果未设置,将会使用zookeeper.session.timeout.ms值
Type: int
Default: null
Valid Values:
Importance: high
Update Mode: read-only
zookeeper.session.timeout.ms
kafka连接zk的一个session的超时时间
Type: int
Default: 18000 (18 seconds)
Valid Values:
Importance: high
Update Mode: read-only
二、如何更新broker相关配置
broker的配置有三种更新模式:read-only、per-broker、cluster-wide;
- read-only:需要重启才能生效
- per-broker: 可以针对每一个broker动态更新
- cluster-wide:在集群范围内更新,或者针对每一个broker更新(只为了测试)
对于read-only模式配置,只能通过修改config/server.properties配置文件然后重启生效;
对于 per-broker模式的,可以使用命令行进行修改
## 修改
bin/kafka-configs.sh --bootstrap-server localhost:9092 --entity-type brokers --entity-name 0 --alter --add-config log.cleaner.threads=2
## 查询
bin/kafka-configs.sh --bootstrap-server localhost:9092 --entity-type brokers --entity-name 0 --describe
##删除
bin/kafka-configs.sh --bootstrap-server localhost:9092 --entity-type brokers --entity-name 0 --alter --delete-config log.cleaner.threads
对于这些被修改的per-broker模式的配置,会被存储在zk 的==/config/brokers/id==中;
对于 cluster-wide模式的,可以使用命令行进行修改
## 新增
bin/kafka-configs.sh --bootstrap-server localhost:9092 --entity-type brokers --entity-default --alter --add-config log.cleaner.threads=2
## 查询
bin/kafka-configs.sh --bootstrap-server localhost:9092 --entity-type brokers --entity-default --describe
对于这些被修改的cluster-wide模式的配置,会被存储在zk 的==/config/brokers/<default>==中;
注意 在(cluster-wide)集群级别可配置的所有配置也可以在(per-broker)级别进行配置,如果在不同级别定义配置值,则使用以下优先顺序:
- Dynamic per-broker config stored in ZooKeeper(存储在zk中的 per-broker配置)
- Dynamic cluster-wide default config stored in ZooKeeper(存储在zk中的 cluster-wide配置)
- Static broker config from server.properties
对于一个新启动的kafka,在zk中是没有per-broker和 cluster-wide 动态配置存储的,所以这个时候是以配置文件为主,当对某些动态配置进行配置之后,对应的ZK node中就会有相应数据了,使用顺序如上。
三、kafka-configs.sh 命令详解
kafka-configs.sh 命令必须包含 --alter 或者 --describe 其中一个
kafka-configs.sh --help
kafka-configs.sh --version
–bootstrap-server <lStrng ocalhost:9092> 指定kafka的地址;
–entity-type <String> 指定要修改的实体类型,topics、clients、users、brokers、broker-loggers、ips;
–entity-name String 指定上述实体类型的名;
–entity-default 在上述类型中的cluster-wide范围内更新配置
–alter 修改相应配置
–add-config ’k1=v1‘ 修改或者更新相应配置 log.cleaner.threads=2,多个值,需要用引号引住,并用逗号分隔开,即’k1=v1,k2=v2,k3=[v1,v2,v3]‘
–describe 列出相应配置
–all 列出所有配置
–delete-config String 删除相应配置
–broker id 指定要配置的brokerid
–broker-defaults 更新所有的broker,即cluster-wide模式
相关文章:
kafka---broker相关配置
一、Broker 相关配置 1、一般配置 broker.id 当前kafka服务的sid(server id),在kafka集群中,该值是唯一的(unique),如果未设置此值,kafka会自动生成一个int值;为了防止自动生成的值与用户设置…...

【Golang学习笔记】从零开始搭建一个Web框架(二)
文章目录 模块化路由前缀树路由 前情提示: 【Golang学习笔记】从零开始搭建一个Web框架(一)-CSDN博客 模块化路由 路由在kilon.go文件中导致路由和引擎交织在一起,如果要实现路由功能的拓展增强,那将会非常麻烦&…...

高精度地图导航论文汇总
文章目录 2021基于车载激光点云的高精地图矢量化成图[J] 2022基于高精度地图的智能车辆路径规划与跟踪控制研究[M] 2023一种无人驾驶融合决策方案的设计与实现[M] 2021 基于车载激光点云的高精地图矢量化成图[J] 摘要: 针对车载激光点云中对各特征物提取结果后矢量…...

【域适应】基于域分离网络的MNIST数据10分类典型方法实现
关于 大规模数据收集和注释的成本通常使得将机器学习算法应用于新任务或数据集变得异常昂贵。规避这一成本的一种方法是在合成数据上训练模型,其中自动提供注释。尽管它们很有吸引力,但此类模型通常无法从合成图像推广到真实图像,因此需要域…...
从零实现诗词GPT大模型:pytorch框架介绍
专栏规划: https://qibin.blog.csdn.net/article/details/137728228 因为咱们本系列文章主要基于深度学习框架pytorch进行,所以在正式开始之前,现对pytorch框架进行一个简单的介绍,主要面对深度学习或者pytorch还不熟悉的朋友。 一、安装pytorch 这一步很简单,主要通过p…...

[目标检测] OCR: 文字检测、文字识别、text spotter
概述 OCR技术存在两个步骤:文字检测和文字识别,而end-to-end完成这两个步骤的方法就是text spotter。 文字检测数据集摘要 daaset语言体量特色MTWI中英文20k源于网络图像,主要由合成图像,产品描述,网络广告(淘宝)MS…...

Windows环境下删除MySQL
文章目录 一、关闭MySQL服务1、winR打开运行,输入services.msc回车2、服务里找到MySQL并停止 二、卸载MySQL软件1、打开控制模板--卸载程序--卸载MySQL相关的所有组件 三、删除MySQL在物理硬盘上的所有文件1、删除MySQL的安装目录(默认在C盘下的Program …...
uniapp:uview-plus的一些记录
customStyle 并不是所有的组件都有customStyle属性来设置自定义属性,有的还是需要通过::v-deep来修改内置样式 form表单 labelStyle 需要的是一个对象 :labelStyle"{color: #333333,fontSize: 32rpx,fontWeight: 500}"dateTimePicker选择器设置默认值…...

OLTP 与 OLAP 系统说明对比和大数据经典架构 Lambda 和 Kappa 说明对比——解读大数据架构(五)
文章目录 前言OLTP 和 OLAPSMP 和 MPPlambda 架构Kappa 架构 前言 本文我们将研究不同类型的大数据架构设计,将讨论 OLTP 和 OLAP 的系统设计,以及有效处理数据的策略包括 SMP 和 MPP 等概念。然后我们将了解经典的 Lambda 架构和 Kappa 架构。 OLTP …...

步骤大全:网站建设3个基本流程详解
一.领取一个免费域名和SSL证书,和CDN 1.打开网站链接:https://www.rainyun.com/z22_ 2.在网站主页上,您会看到一个"登陆/注册"的选项。 3.点击"登陆/注册",然后选择"微信登录"选项。 4.使用您的…...

利用Sentinel解决雪崩问题(二)隔离和降级
前言: 虽然限流可以尽量避免因高并发而引起的服务故障,但服务还会因为其它原因而故障。而要将这些故障控制在一定范围避免雪崩,就要靠线程隔离(舱壁模式)和熔断降级手段了,不管是线程隔离还是熔断降级,都是对客户端(调…...
基于springboot的房产销售系统源码数据库
基于springboot的房产销售系统源码数据库 摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于房产销售系统当然也不能排除在外,随着网络技术的不断成熟,带动了房产…...

【MATLAB】基于Wi-Fi指纹匹配的室内定位-仿真获取WiFi RSSI数据(附代码)
基于Wi-Fi指纹匹配的室内定位-仿真获取WiFi RSSI数据 WiFi指纹匹配是室内定位最为基础和常见的研究,但是WiFi指纹的采集可以称得上是labor-intensive和time-consuming。现在,给大家分享一下我们课题组之前在做WiFi指纹定位时的基于射线跟踪技术仿真WiFi…...
深圳晶彩智能ESP32-3248S035R使用LovyanGFX实现手写板
深圳晶彩智能ESP32-3248S035R介绍 深圳晶彩智能出品ESP32-3248S035R为3.5寸彩色屏采用分辨率480x320彩色液晶屏,驱动芯片是ST7796。板载乐鑫公司出品ESP-WROOM-32,Flash 4M。型号尾部“R”标识电阻膜的感压式触摸屏,驱动芯片是XPT2046。 Lo…...

【Spring Boot】深入解密Spring Boot日志:最佳实践与策略解析
💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【Spring Boot】深入解密Spring Boot日志:最佳实践与策略解析 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 Spring Boot 日志一. 日志的概念?…...

ISTQB选择国内版,还是国际版呢
1, ISTQB简介 ISTQB(International Software Testing Qualifications Board)是一个国际软件测试资格认证机构,旨在提供一个统一的软件测试认证标准。ISTQB成立于2002年,是非盈利性的组织,由世界各地的国家或地区软件测…...

头歌-机器学习 第11次实验 softmax回归
第1关:softmax回归原理 任务描述 本关任务:使用Python实现softmax函数。 相关知识 为了完成本关任务,你需要掌握:1.softmax回归原理,2.softmax函数。 softmax回归原理 与逻辑回归一样,softmax回归同样…...

Qt for MCUs 2.7正式发布
本文翻译自:Qt for MCUs 2.7 released 原文作者:Qt Group高级产品经理Yoann Lopes 翻译:Macsen Wang Qt for MCUs的新版本已发布,为Qt Quick Ultralite引擎带来了新功能,增加了更多MCU平台的支持,并且我们…...

共享IP和独享IP如何选择,两者有何区别?
有跨境用户在选择共享IP和独享IP时会有疑问,不知道该如何进行选择,共享IP和独享IP各有其特点和应用场景,选择哪种方式主要取决于具体需求和预算。以下是对两者的详细比较: 首先两者的主要区别在于使用方式和安全性:共…...
文心一言VSchatGPT4
文心一言和GPT-4各有优势,具体表现在不同的测试场景下。 在某些测试场景中心一言的表现优于GPT-4,例如在故事的完整度和情节吸引力方面,文心一言表现得更加符合指令,情节更吸引人。这可能得益于其模型在训练时对中文语境的深入理…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...

04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
PostgreSQL——环境搭建
一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在࿰…...

论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...
Python 高效图像帧提取与视频编码:实战指南
Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...