Kafka 的配置文件

  1. broker.id=1:为 broker 指定一个唯一的 ID。

  2. listeners=PLAINTEXT://x.x.x.x:xxx:指定 broker 监听的协议、IP 地址和端口。

  3. num.network.threads=3:指定用于处理网络请求的线程数。

  4. num.io.threads=8:指定用于 I/O 操作的线程数。

  5. socket.send.buffer.bytes=102400:设置 socket 发送缓冲区的大小。

  6. socket.receive.buffer.bytes=102400:设置 socket 接收缓冲区的大小。

  7. socket.request.max.bytes=104857600:指定 Kafka broker 能够接收的最大请求大小。

  8. log.dirs=/data/kafka/logs:指定日志文件存储的目录。

  9. num.partitions=1:为自动创建的主题默认分区数。

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

  11. default.replication.factor=1:默认的副本因子,即默认情况下,消息会被复制到多少个 broker 上。

  12. offsets.topic.replication.factor=1:偏移主题的副本因子。

  13. transaction.state.log.replication.factor=1:事务状态日志的副本因子。

  14. transaction.state.log.min.isr=1:事务日志的最小副本数。

  15. log.retention.hours=24:设置日志文件的保留时间。

  16. log.segment.bytes=1073741824:设置日志段文件的大小。

  17. log.retention.check.interval.ms=300000:设置日志保留检查的时间间隔。

  18. zookeeper.connect=x.x.x.x:x1:指定 Kafka 用于与 ZooKeeper 通信的地址和端口。

  19. zookeeper.connection.timeout.ms=18000:设置与 ZooKeeper 连接的超时时间。

  20. group.initial.rebalance.delay.ms=0:设置消费者组在 Kafka 启动时进行初始再平衡操作的延迟。

  21. auto.create.topics.enable=true:是否允许 Kafka 自动创建主题。

  22. delete.topic.enable=true:是否允许删除主题。

  23. unclean.leader.election.enable=false:是否启用不洁的领导者选举。

  24. max.inflight.requests.per.connection:这个参数指定了在任何给定时间点,客户端可以向 broker 发送的最大未确认请求数。增加此值可以提高吞吐量,但也可能增加延迟,因为客户端在等待更多的请求得到响应。如果设置得太低,可能会降低吞吐量,因为客户端在发送更多请求之前需要等待确认。

请注意,调整这些参数时需要根据你的具体使用场景和 Kafka 集群的性能特点来进行。错误的配置可能会导致性能问题或不稳定的行为。在改变配置后,需要重启 Kafka 服务以使更改生效。

  • num.network.threads:默认值为 3,推荐值通常也是 3,但可以根据网络硬件的性能进行调整。
  • num.io.threads:默认值为 8,推荐值同样为 8,这个值可以根据 I/O 密集型任务的需求进行调整。
  • socket.send.buffer.bytessocket.receive.buffer.bytes:默认值分别为 16384001 字节(32KB),推荐值可以根据网络条件和 Kafka 版本进行调整。
  • socket.request.max.bytes:默认值为 104857600 字节(100MB),这个值通常不需要调整,除非有特别大的消息需要发送。
  • log.retention.hours:默认值为 168 小时(7天),推荐值可以根据日志保留策略进行调整。
  • log.segment.bytes:默认值为 1073741824 字节(1GB),推荐值可以根据磁盘 I/O 性能和日志文件管理策略进行调整。

关于 Kafka 参数的更多详细信息和推荐值,你可以在 Kafka 的官方文档中找到。以下是 Kafka 官方文档的链接,你可以在其中找到关于配置参数的详细说明:

请注意,Kafka 的配置和推荐值可能会随着版本的更新而变化,因此建议参考你所使用的 Kafka 版本的官方文档。此外,实际的推荐值还应考虑你的特定使用场景、硬件配置和网络环境。

相关推荐
ALex_zry36 分钟前
Redis Cluster 分布式缓存架构设计与实践
redis·分布式·缓存
为什么不问问神奇的海螺呢丶3 小时前
n9e categraf rabbitmq监控配置
分布式·rabbitmq·ruby
TTBIGDATA7 小时前
【Atlas】Atlas Hook 消费 Kafka 报错:GroupAuthorizationException
hadoop·分布式·kafka·ambari·hdp·linq·ranger
m0_687399849 小时前
telnet localhost 15672 RabbitMQ “Connection refused“ 错误表示目标主机拒绝了连接请求。
分布式·rabbitmq
indexsunny9 小时前
互联网大厂Java面试实战:微服务与Spring生态技术解析
java·spring boot·redis·kafka·mybatis·hibernate·microservices
陌上丨9 小时前
生产环境分布式锁的常见问题和解决方案有哪些?
分布式
新新学长搞科研9 小时前
【智慧城市专题IEEE会议】第六届物联网与智慧城市国际学术会议(IoTSC 2026)
人工智能·分布式·科技·物联网·云计算·智慧城市·学术会议
泡泡以安10 小时前
Scrapy分布式爬虫调度器架构设计说明
分布式·爬虫·scrapy·调度器
编程彩机11 小时前
互联网大厂Java面试:从Spring Boot到分布式事务的技术场景解析
spring boot·kafka·分布式事务·微服务架构·java面试·技术解析
没有bug.的程序员11 小时前
RocketMQ 与 Kafka 深度对垒:分布式消息引擎内核、事务金融级实战与高可用演进指南
java·分布式·kafka·rocketmq·分布式消息·引擎内核·事务金融