首页 > 解决方案 > Kafka Producer 将生产者消息限制为 1024 字节

问题描述

我正在尝试使用终端生成 kafka 消息。我下载了这个版本kafka_2.12-2.4.1.tgz。我尝试启动 Zookeeper 服务器,然后启动 Kafka 服务器。我有一个超过 1024 字节的 json。不允许发送超过 1024 字节。

我试图参考How can I send large messages with Kafka (over 15MB)? . 但这没有帮助。不确定我是否遗漏了任何配置更改。

生产者配置

max.request.size=2147483647 
socket.buffer.size=2147483647 

服务器配置

socket.request.max.bytes=2147483647
replica.fetch.max.bytes=2147483647
message.max.bytes=2147483647
max.message.bytes=2147483647
replica.fetch.max.bytes=2147483647

消费者配置

max.request.size=2147483647
fetch.message.max.bytes=2147483647
max.partition.fetch.bytes=2147483647

标签: apache-kafkakafka-consumer-apikafka-producer-api

解决方案


您也应该增加max.partition.fetch.bytes消费者配置参数以接收大消息。

max.partition.fetch.bytes:服务器将返回的每个分区的最大数据量。记录由消费者分批获取。如果 fetch 的第一个非空分区中的第一个记录批大于此限制,则该批仍将返回以确保消费者可以进行。代理接受的最大记录批量大小通过 message.max.bytes(代理配置)或 max.message.bytes(主题配置)定义。有关限制消费者请求大小的信息,请参阅 fetch.max.bytes。


推荐阅读