spring cloud stream中关于kafka生产消费大数据量的配置问题

本文主要探讨了在Spring Cloud Stream Kafka中遇到大数据量传输时引发的MessageSizeTooLargeException异常。通过分析生产者、broker和消费者的角色,提出配置max.request.size、max.partition.fetch.bytes和message.max.bytes等参数来解决该问题,确保消息能够正确传输且避免数据丢失。
摘要由CSDN通过智能技术生成

1 基础了解

在这里插入图片描述
producer:生产者,Spring Cloud Stream kafka应用程序
broker: kafka服务
consumer:消费者,Spring Cloud Stream kafka应用程序

待解决的问题:

  • kafka生产消费大数据量的配置问题
    这个问题会是的应用程序抛异常:
    kafka.common.MessageSizeTooLargeException。

我们不看代码,从问题出发,去思考一下。kafka需要从生产者(应用程序A)接受一个具有大数据量的message,然后,将该大数据量的message发送给消费者(应用程序B)。这是一个基本流程。

2 配置步骤

生产者(应用程序A):我不管你(broker)受不受得了,我就是要发大数据量的消息,我任性。
broker:你不管人家受不受的了,你就这么来,我不接受(拒接接受这么大的消息)。
broker:我这里有不少大数据量的消息,我就要发给消费者(应用程序B),我也任性。
消费者(应用程序B):你不管人家受不受的了,你就这么来,我也不接受(拒接接受这么大的消息)。

从上面的对话,我们发现这三个家伙 (生产者(应用程序A),broker,消费者(应用程序B))都有各自的问题。于是他们思考的自身的问题也做出了改变。

生产者(应用程序A):你(broker)多大的数据受的了哇?我听你的,告诉我一下呗。于是有了生产者(应用程序A)一端的配置。
broker:我可以接受10M(比默认的1M大得多了)的message(这小子生产者(应用程序A)说不定一冲动发了11M呢?我还的留点余量11M吧!)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值