Tune acks, retries, batch size, compression, and retention for production reliability and performance.
Important Kafka Configurations
# Producer config
acks=all # wait for all replicas to confirm (safest)
acks=1 # wait for leader only (default)
acks=0 # fire and forget (fastest, may lose data)
retries=3 # retry on failure
linger.ms=5 # batch messages for 5ms before sending
batch.size=16384 # batch up to 16KB before sending
compression.type=snappy # compress messages
# Consumer config
auto.offset.reset=earliest # start from beginning
auto.offset.reset=latest # only new messages
enable.auto.commit=false # manual commit for safety
max.poll.records=500 # max messages per poll
session.timeout.ms=30000 # heartbeat timeout
# Broker config
log.retention.hours=168 # keep messages for 7 days
log.segment.bytes=1073741824 # 1GB segment files
num.partitions=1 # default partitions per topic