broker侧所有topic:message.max.bytes
broker侧单个topic:max.message.bytes
max.request.size
fetch.max.bytes
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
之前有个疑问就是:假如 max.request.size 大于 batch.size,那么该条消息会不会分多个 batch 发送到 broker?
答案显然是不会,根据上述所说,如果一个 ProducerRecord 就已经超出了 batch.size 的大小,那么 ProducerBatch 仅包含一个 ProducerRecord,并且该 ProducerBatch 并不会加入到 BufferPool 中。