Я использую Kafka MirrorMaker на основе изображения Kafka http://apache.cbox.biz/kafka/2.4.1/kafka_2.13-2.4.1.tgz. Моя проблема в том, что независимо от того, что я пробовал, MirrorMaker агрегирует задержку на 10 разделах топи c в течение 60 секунд, затем отставание обнуляется за секунду, поскольку сообщений явно не так много, а затем задержка снова увеличивается на 60 секунд . Я бы хотел, чтобы сообщения и задержка обнулялись, скажем, каждые 10 секунд, но я не смог этого добиться, хотя я немного поигрался в основном с файлом конфигурации производителя mirrormaker.
consumer.props:
enable.auto.commit=false
client.id=mirror_maker_consumer
exclude.internal.topics=true
group.id=MirrorMaker
bootstrap.servers=${SOURCE_BOOTSTRAP_SERVERS_LIST}
partition.assignment.strategy=org.apache.kafka.clients.consumer.RoundRobinAssignor
Producer.props:
acks=all
bootstrap.servers=${TARGET_BOOTSTRAP_SERVERS}
client.id=mirror_maker_consumer_telemetry
max.in.flight.requests.per.connection=1
retries=5
batch.size = 10
buffer.memory = 3000
linger.ms = 5
max.request.size = 1000
max.block.ms = 3000
receive.buffer.bytes = -1
send.buffer.bytes = -1
transaction.timeout.ms = 22000
На уровне производителя я играл с:
- batch.size
- linger.ms
- max .request.size
- попытался добавить свойства нижних 4/5, чтобы сократить время между пакетами, не повезло.
Некоторые советы были бы очень признательны.
I Я не уверен, есть ли эффективная задержка и сообщения остаются на стороне потребителя в течение этих 60 секунд, или просто задержка обновляется каждые 60 секунд, а сообщения тем временем реплицируются ...
С уважением, OvivO