> 文章列表 > Kafka消息发送流程

Kafka消息发送流程

Kafka消息发送流程

Kafka消息发送流程

消息发送高阶用法

自定义拦截器

自定义序列化

自定义分区器

核心参数

https://kafka.apache.org/0110/documentation.html

参数名 描述 默认值
bootstrap.servers 格式为host1:port1,host2:port2,…
key.serializer
value.serializer
retries 0
retry.backoff.ms 上次发送失败,重试的时间间隔 100
partitioner.class 消息的分区策略 org.apache.kafka.clients.producer.internals.DefaultPartitioner
acks 可选值为[all, -1, 0, 1] 1
batch.size batch的大小,默认为16kb,如果batch太小,会导致频繁网络请求,吞吐量下降,如果batch太大,会导致一条消息需要等待很久才能被发送出去 16k
linger.ms 超过linger.ms指定的时间,batch还没满,也会被发送出去,避免消息的延迟太长 0
max.request.size 限制发送出去的消息大小 1m
request.timeout.ms 消息发送的超时时间,默认30s,如果30s内收不到响应,会抛出 TimeoutException 30s

参考博客

[1]https://qiankunli.github.io/2017/12/08/kafka_clients.html
[2]https://cloud.tencent.com/developer/article/1990530