架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 120|回复: 2

【实战】Kafka 参数调优,解决消息体过大问题

[复制链接]
发表于 2021-12-13 16:25:11 | 显示全部楼层
在使用 Kafka 发送消息的时候,生产者 max.request.size 默认为:1048576(1M)的大小。

QQ截图20211213150429.jpg

如果生产者消息体超出 1MB,则会报错如下:

The message is 18685640 bytes when serialized which is larger than 1048576, which is the value of the max.request.size configuration.

QQ截图20211213161542.jpg

解决方案

以 spring 项目为例,在项目的配置文件设置请求最大大小为 20MB ,如下:

设置完成后,重启项目,可以看到已经设置成功,如下图:

QQ截图20211213161409.jpg

当发送的消息超过 1MB 的时候,会报新的错误,如下:

The request included a message larger than the max message size the server will accept.

解决方案

登录到 Kafka 服务器,修改 server.properties 文件,添加如下配置:

默认值:1000012,接近1M, 服务器可以接收的消息的最大大小。

重启 Kafka 服务,问题解决。

并没有设置消费者的其他设置,例如:

(完)





上一篇:【实战】CentOS 搭建 Kafka 消息中间件
下一篇:JS 拦截所有请求 XMLHttpRequest 的响应信息
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2021-12-13 16:31:31 | 显示全部楼层
特别说明:该参数调整完毕以后对已创建的topic不起作用

对已创建topic参数调整:bin/kafka-configs.sh --zookeeper localhost:2181  --alter --topic topicName  --config max.message.bytes=62914560

完美解决
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-12-26 17:16:30 | 显示全部楼层
学习学习了。。。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2022-1-29 05:35

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表