集群配置
1. server.properties
message.max.bytes=5242880
default.replication.factor=2
replica.fetch.max.bytes=5242880
说明:
broker 配置:
message.max.bytes (默认:1000000) – broker能接收消息的最大字节数,这个值应该比消费端的fetch.message.max.bytes更小才对,否则broker就会因为消费端无法使用这个消息而挂起。
default.replication.factor(默认:1),副本因子,大于1为高可用,此值应小于等于broker数量。
replica.fetch.max.bytes (默认: 1MB) – broker可复制的消息的最大字节数。这个值应该比message.max.bytes大,否则broker会接收此消息,但无法将此消息复制出去,从而造成数据丢失。
2. 重启kafka集群服务
3. 生产者配置
# 发送所有ISR
acks=all
# 重试次数
retries=2
# 批量发送大小(128KB)
batch.size=131072
# 消息体大小(5M)
max.request.size=5242880
# 缓存大小,根据本机内存大小配置(64M)
buffer.memory=67108864
# 发送频率,和batch.size参数满足任一条件发送
linger.ms=5
# 发送端id,便于统计(单线程时)
client.id=producer-asyn
# Key序列化
key.serializer=org.apache.kafka.common.serialization.StringSerializer
# value序列化
value.serializer=org.apache.kafka.common.serialization.StringSerializer