来自我的kafka生产者的一些消息大于默认的1mb,并且被代理拒绝。我无法访问经纪人和消费者进行更改。所以我只能在制作人的层面上做出改变。我正在考虑在我的producer中使用snappy压缩,batch.size为5mb。请让我知道,如果这是正确的选择或任何其他方式是我的用例可用。谢谢
xdyibdwo1#
无论何时从生产者发送消息,它都存储在kafka代理中,并由消费者使用。生产者->经纪人->消费者因此,如果您想从kafka发送大消息,您需要同时更改代理和使用者的配置设置。a) 经纪人:
message.max.bytes=15728640 replica.fetch.max.bytes=15728640
b) 对于消费者:
fetch.message.max.bytes=15728640
但由于您没有访问代理和使用者的权限,因此可以在producer或topic级别设置compression属性。在主题级别设置压缩属性:
./bin/kafka-topics --create --zookeeper localhost:2181 --config compression.type=gzip --topic topic_name
或者设置属性 compression.type = gzip 在Kafka生产者客户端api。
compression.type = gzip
1条答案
按热度按时间xdyibdwo1#
无论何时从生产者发送消息,它都存储在kafka代理中,并由消费者使用。生产者->经纪人->消费者
因此,如果您想从kafka发送大消息,您需要同时更改代理和使用者的配置设置。a) 经纪人:
b) 对于消费者:
但由于您没有访问代理和使用者的权限,因此可以在producer或topic级别设置compression属性。
在主题级别设置压缩属性:
或者设置属性
compression.type = gzip
在Kafka生产者客户端api。