KafKa02:Kafka配置文件server.properties介绍

一、配置文件位置

二、配置文件介绍

默认下:

  • 9092 是处理消息队列核心业务(客户端与 broker 交互)的端口
  • 9093 是集群内部控制器通信的端口
bash 复制代码
# 指定节点角色,这里同时作为 broker(消息代理)和 controller(控制器)
process.roles=broker,controller

# 当前节点的唯一标识 ID
node.id=1

# 控制器集群的投票节点列表,格式为 "nodeId@host:port",这里只有当前节点
controller.quorum.voters=1@localhost:9093
# 控制器集群的 bootstrap 服务器地址,用于节点发现控制器集群
controller.quorum.bootstrap.servers=localhost:9093

# 节点监听的网络地址列表,PLAINTEXT 用于客户端和 broker 间通信,CONTROLLER 用于控制器间通信
listeners=PLAINTEXT://127.0.0.1:9092,CONTROLLER://127.0.0.1:9093

# broker 之间通信使用的监听器名称
inter.broker.listener.name=PLAINTEXT

# 对外公布的监听器地址(客户端实际连接的地址)
advertised.listeners=PLAINTEXT://localhost:9092,CONTROLLER://localhost:9093

# 指定用于控制器通信的监听器名称
controller.listener.names=CONTROLLER

# 监听器名称与安全协议的映射关系,这里都使用 PLAINTEXT(明文传输)
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL

# 处理网络请求的线程数
num.network.threads=3

# 处理 I/O 操作的线程数
num.io.threads=8

# 套接字发送缓冲区大小(字节)
socket.send.buffer.bytes=102400

# 套接字接收缓冲区大小(字节)
socket.receive.buffer.bytes=102400

# 允许的最大套接字请求大小(字节)
socket.request.max.bytes=104857600

# 日志和数据存储目录
log.dirs=D:/Kafka/kafka_2.13-4.1.0/logs

# 新建主题时的默认分区数
num.partitions=1

# 每个数据目录用于日志恢复的线程数
num.recovery.threads.per.data.dir=1

# 偏移量主题(__consumer_offsets)的副本因子
offsets.topic.replication.factor=1
# 消费者组协调器状态主题的副本因子
share.coordinator.state.topic.replication.factor=1
# 消费者组协调器状态主题的最小 ISR(同步副本)数量
share.coordinator.state.topic.min.isr=1
# 事务状态日志的副本因子
transaction.state.log.replication.factor=1
# 事务状态日志的最小 ISR 数量
transaction.state.log.min.isr=1

# 日志保留时间(小时),超过此时间的日志会被删除
log.retention.hours=168

# 单个日志段的最大大小(字节),达到此大小后会创建新的日志段
log.segment.bytes=1073741824

# 日志保留检查的时间间隔(毫秒)
log.retention.check.interval.ms=300000

三、关键名词

bash 复制代码
broker:Kafka 服务器实例,负责存储消息和处理客户端请求。
controller:集群管理者,协调分区主从切换和元数据管理。
topic:消息的逻辑分类,用于区分不同类型的消息流。
分区:topic 的物理拆分,实现消息并行存储和处理。
生产者:向 Kafka topic 发送消息的客户端应用。
消费者:从 Kafka topic 读取消息的客户端应用。

其中,Topic + 分区(Partition)的组合可以唯一标识 Kafka 中的一个 "物理消息队列"。
(配置文件中若选用默认的最大分区个数num.partitions=1,则可以简单理解为Topic 唯一对应一个物理消息队列)
相关推荐
KAIWEILIUCC7 小时前
Ray:高性能、易扩展的Python分布式计算框架
分布式·llm
一路向北finish11 小时前
《CentOS 7 搭建 Hadoop 3.3.6 分布式集群:NFS 共享方案完整实操》
linux·运维·hadoop·分布式·centos
天涯明月199311 小时前
Ray 架构解析——以动态任务图统一 AI 计算的分布式框架
大数据·人工智能·分布式·架构·ray
小张同学a.13 小时前
MooseFS 分布式存储实战指南:部署、运维与 Pacemaker+SBD 高可用落地
linux·运维·分布式·pacemaker·moosefs·sbd
BYSJMG14 小时前
大数据毕业设计选题方向|【基于大数据的燃油消耗数据可视化与分析】Hadoop+PySpark+FP-Growth
大数据·hadoop·分布式·信息可视化·数据分析·课程设计
NJCloud1 天前
MooseFS 分布式存储部署与高可用架构实践
linux·运维·分布式·架构
zcmodeltech1 天前
钢铁冶金沙盘模型控制系统设计与实现:高炉-连铸-热轧多工序联动方案
分布式·stm32·单片机·嵌入式硬件·交互
肠畔码农1 天前
深度解密 Redis 分布式锁:从单机原子语义到集群架构博弈
redis·分布式·架构
小张同学a.2 天前
Hadoop 分布式集群实战 1—— 集群搭建与在线扩容
大数据·hadoop·分布式
小的~~2 天前
面试被问分布式锁,我差点语塞…直到搞懂了Redis、ZooKeeper和etcd的“三国杀”
redis·分布式·面试