开发者社区 > 数据库 > 正文

调整完kafka消息大小max.message.bytes之后依然报错消息过大的情况咋办?

调整完kafka消息大小max.message.bytes之后依然报错消息过大的情况咋办?kafkaserver:Messagewastoolarge,serverrejectedittoavoidallocationerror.

展开
收起
爱喝咖啡嘿 2022-12-22 11:18:54 1302 1
1 条回答
写回答
取消 提交回答
  • 如果单独调整max.request.size参数的大小可能不起作用,因为在broker端和consumer端同样对消息的大小存在限制,我们在调整的时候要同时调整这三个参数,不然可能是broker接受不了producter端的消息,要不就是consumer端消费不了消息。调整如下:

    producer端:
    max.request.size=5242880(5M)
    broker:
    message.max.bytes=6291456(6M)
    consumer:
    fetch.max.bytes=7340032(7M)
     
    max.request.size < message.max.bytes < fetch.max.bytes
    

    还有一个地方就是topic端同样也有一个max.message.bytes参数,它只针对某个主题生效,可动态配置,可覆盖全局的 message.max.bytes,好处就是可以针对不同主题去设置 Broker 接收消息的大小,而且不用重启 broker。

    2022-12-22 23:44:10
    赞同 展开评论 打赏

数据库领域前沿技术分享与交流

相关电子书

更多
Java Spring Boot开发实战系列课程【第16讲】:Spring Boot 2.0 实战Apache Kafka百万级高并发消息中间件与原理解析 立即下载
MaxCompute技术公开课第四季 之 如何将Kafka数据同步至MaxCompute 立即下载
消息队列kafka介绍 立即下载