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

怎么免费搭建网站百度服务中心官网

怎么免费搭建网站,百度服务中心官网,discuz做电影网站,网站内容栏由什么构成目录Kafka 配置参数详解:ZooKeeper 模式与 KRaft 模式对比一、ZooKeeper 模式配置详解1. 核心架构概述2. 必选配置参数2.1 ZooKeeper 连接配置2.2 Broker 基础配置3. Topic 与分区配置4. 消息留存策略5. 性能调优参数6. 安全配置二、KRaft 模式配置详解1. 核心架构概…

目录

  • Kafka 配置参数详解:ZooKeeper 模式与 KRaft 模式对比
    • 一、ZooKeeper 模式配置详解
      • 1. 核心架构概述
      • 2. 必选配置参数
        • 2.1 ZooKeeper 连接配置
        • 2.2 Broker 基础配置
      • 3. Topic 与分区配置
      • 4. 消息留存策略
      • 5. 性能调优参数
      • 6. 安全配置
    • 二、KRaft 模式配置详解
      • 1. 核心架构概述
      • 2. 必选配置参数
        • 2.1 角色与集群配置
        • 2.2 节点标识与网络配置
      • 3. 控制器配置
      • 4. 与 ZooKeeper 模式通用的配置
      • 5. 性能调优参数
    • 三、两种模式配置对比表
    • 四、选择建议与最佳实践
      • 1. 模式选择
      • 2. KRaft 模式最佳实践
      • 3. 通用配置建议

Kafka 配置参数详解:ZooKeeper 模式与 KRaft 模式对比

Kafka 配置参数根据底层元数据管理方式的不同,主要分为 ZooKeeper 模式和 KRaft 模式。本文将先分别介绍两种模式的核心架构,再详细对比各模块的配置参数,帮助你快速掌握 Kafka 配置要点。

一、ZooKeeper 模式配置详解

1. 核心架构概述

ZooKeeper 模式是 Kafka 传统架构,依赖 ZooKeeper 集群管理元数据(如 Topic 信息、分区副本分配、broker 存活状态等)。Kafka broker 与 ZooKeeper 保持双向通信:

  • broker 启动时向 ZooKeeper 注册自身信息;
  • broker 通过 ZooKeeper 监听集群变化(如其他 broker 加入/退出);
  • 控制器(Controller)节点从 ZooKeeper 获取元数据并同步给其他 broker。

2. 必选配置参数

2.1 ZooKeeper 连接配置
参数名说明
zookeeper.connectZooKeeper 集群连接地址,格式:主机:端口[/路径],多个地址用逗号分隔。
示例:zk1:2181,zk2:2181,zk3:2181/kafka
zookeeper.connection.timeout.ms连接 ZooKeeper 的超时时间(默认 18000ms),超时则 broker 启动失败。
zookeeper.session.timeout.msZooKeeper 会话超时时间(默认 6000ms),超时后 broker 被标记为下线。
2.2 Broker 基础配置
参数名说明
broker.id每个 broker 的唯一整数标识(如 012),集群内不可重复。
listenersbroker 监听的网络地址和协议,格式:协议://主机:端口
示例:PLAINTEXT://:9092
log.dirs消息日志存储路径,建议挂载高性能磁盘,可配置多个路径(用逗号分隔)。

3. Topic 与分区配置

参数名说明
num.partitions新建 Topic 的默认分区数,吞吐量敏感场景建议设为 3 或更高。
default.replication.factor新建 Topic 的默认副本数,生产环境建议设为 3(容忍 1-2 个节点故障)。
auto.create.topics.enable是否允许自动创建 Topic(默认 true),生产环境建议关闭(设为 false)。

4. 消息留存策略

参数名说明
log.retention.hours消息保留时长(默认 168 小时,即 7 天)。
log.retention.bytes单个分区的最大日志大小(默认 -1,不限制)。
log.segment.bytes日志分段(segment)的大小(默认 1GB),达到此大小后创建新 segment。

5. 性能调优参数

参数名说明
num.network.threads处理网络请求的线程数(默认 3),高并发场景建议增至 8-16
num.io.threads处理磁盘 I/O 的线程数(默认 8),SSD 环境可增至 16-32
socket.send.buffer.bytes网络发送缓冲区大小(默认 100KB),大消息场景可增至 1MB

6. 安全配置

参数名说明
security.inter.broker.protocolbroker 间通信协议(如 PLAINTEXTSSLSASL_SSL)。
sasl.mechanism.inter.broker.protocolbroker 间认证机制(如 SCRAM-SHA-256)。
ssl.keystore.locationSSL 密钥库路径(启用 SSL 时必填)。

二、KRaft 模式配置详解

1. 核心架构概述

KRaft(Kafka Raft)模式是 Kafka 3.0+ 引入的无 ZooKeeper 架构,通过内置的 Raft 协议自主管理元数据。核心组件包括:

  • 控制器(Controller):负责元数据管理(替代 ZooKeeper 角色),支持多节点组成控制器集群;
  • 元数据日志(Metadata Log):使用 Raft 协议复制和持久化元数据变更;
  • Broker:与控制器通信获取元数据,无需依赖外部服务。

2. 必选配置参数

2.1 角色与集群配置
参数名说明
process.roles节点角色,必填参数,取值:
- broker:仅作为消息代理;
- controller:仅作为控制器;
- broker,controller:同时承担两种角色(单节点测试场景)。
controller.quorum.voters控制器集群的投票成员列表,格式:节点ID@主机:端口
示例:1@controller1:9093,2@controller2:9093,3@controller3:9093
controller.listener.names控制器使用的监听器名称(默认 CONTROLLER),需与 listeners 中定义的一致。
inter.broker.listener.namebroker 间通信使用的监听器名称(如 PLAINTEXT)。
2.2 节点标识与网络配置
参数名说明
node.id节点的唯一标识(整数),用于控制器集群身份识别,默认与 broker.id 相同。
listeners需包含控制器监听器,示例:PLAINTEXT://:9092,CONTROLLER://:9093
log.dirs消息日志和控制器元数据日志的存储路径(与 ZooKeeper 模式相同)。

3. 控制器配置

参数名说明
controller.quorum.election.timeout.ms控制器选举超时时间(默认 2500ms),超时未完成则重新选举。
controller.socket.request.max.bytes控制器处理的最大请求大小(默认 100MB),需与 broker 消息大小匹配。
controller.log.dir控制器元数据日志的存储路径(默认与 log.dirs 相同)。

4. 与 ZooKeeper 模式通用的配置

KRaft 模式保留了大部分与消息处理相关的参数:

参数名说明
num.partitions新建 Topic 的默认分区数(与 ZooKeeper 模式相同)。
default.replication.factor新建 Topic 的默认副本数(与 ZooKeeper 模式相同)。
log.retention.hours消息保留时长(与 ZooKeeper 模式相同)。
message.max.bytes允许接收的最大消息大小(与 ZooKeeper 模式相同)。
acks生产者确认机制(与 ZooKeeper 模式相同)。
auto.offset.reset消费者偏移量重置策略(与 ZooKeeper 模式相同)。

5. 性能调优参数

参数名说明
num.network.threads处理网络请求的线程数(与 ZooKeeper 模式相同)。
num.io.threads处理磁盘 I/O 的线程数(与 ZooKeeper 模式相同)。
KAFKA_HEAP_OPTSJVM 堆内存配置(建议设为物理内存的 50%,不超过 64GB)。

三、两种模式配置对比表

配置项ZooKeeper 模式KRaft 模式
元数据管理依赖 ZooKeeper 集群内置控制器(Controller)集群
核心配置文件server.properties + ZooKeeper 配置仅需 server.properties
必选参数zookeeper.connectprocess.roles, controller.quorum.voters
节点角色所有 broker 角色相同分为 broker 和 controller 角色
控制器选举自动从 broker 中选举一个作为控制器controller.quorum.voters 指定
网络监听器仅需配置 broker 监听器需额外配置 CONTROLLER 监听器
迁移方式不支持直接迁移至 KRaft需通过 kafka-metadata-shell.sh 工具迁移

四、选择建议与最佳实践

1. 模式选择

场景推荐模式理由
新集群部署KRaft 模式架构更简单,减少外部依赖
现有 ZooKeeper 集群逐步迁移至 KRaft降低运维复杂度,提升元数据处理性能
小规模测试KRaft 模式单节点即可运行,无需部署 ZooKeeper

2. KRaft 模式最佳实践

  • 控制器节点数量:建议部署 3-5 个控制器节点(奇数个),保证高可用和容错性;
  • 资源隔离:生产环境建议将控制器节点与 broker 节点分离部署,避免资源竞争;
  • 网络优化:控制器间通信对延迟敏感,建议使用专用网络或高带宽链路;
  • 监控重点:关注控制器选举耗时、元数据复制延迟等指标。

3. 通用配置建议

  • 禁用自动创建 Topic:生产环境设置 auto.create.topics.enable=false,避免意外创建;
  • 合理设置副本数:通常 default.replication.factor=3,兼顾可用性和磁盘成本;
  • 消息压缩:启用 compression.type=lz4zstd,减少网络和存储开销;
  • JVM 调优:设置 KAFKA_HEAP_OPTS="-Xmx8G -Xms8G"(根据实际内存调整),并启用 G1 垃圾回收器。
http://www.dtcms.com/wzjs/270515.html

相关文章:

  • 网站建设公司首选搜索引擎营销简称seo
  • 网站建设个一般需要花费多少钱广州seo优化推广
  • 桐庐城乡建设局网站电脑上突然出现windows优化大师
  • 网站开发语言总结有哪些学编程的正规学校
  • 中英文的网站是怎么做的2021百度模拟点击工具
  • 响应式网页南宁seo网络优化公司
  • 网站域名更换是怎么做的seo的优化方案
  • web开发是网站开发嘛1站长统计在线观看
  • 网络科技公司网站建设策划优化大师 win10下载
  • 专业网站建设公司用织梦吗社群营销方案
  • web开发培训哪家好360seo优化
  • 7免费网站建站故事式的软文广告例子
  • 邯郸网站建设网络公司刷推广链接人数的软件
  • 可以免费下源码的网站文案代写在哪里接单子
  • 设计公司展厅装修搜索引擎优化的方式
  • php网站开发心得体会搜索引擎是什么意思啊
  • 贵州贵阳疫情最新消息长春seo排名公司
  • 唐山网站建设唐山做网站bittorrentkitty磁力猫
  • 电商网站代码模板优化资讯
  • 做一借款撮合网站凌哥seo技术博客
  • 做网站把自己做死华为seo诊断及优化分析
  • 国外专门做美女车模的网站徐汇网站建设
  • 怎么做百度快照让网站排前面2022年最火的新闻摘抄
  • 景区网站做电子商务的特点东莞网络科技公司排名
  • 新房网站建设公司关键词排名优化公司
  • 微网站开发工具seo文章优化方法
  • 开店做网站seo优化关键词是什么意思
  • 天津seo网站设计seo外链怎么做
  • 找工作哪个网站最真实搜索关键词网站
  • 安徽省政府门户网站建设sem是什么牌子