0

私は、1つのトピック、1つのプロデューサー、1つの消費者を構成しようとしています。 例えばプロデューサーは、生産ブローカーがダウンした場合、データの損失が発生し、 :プロデューサー用に設定プロデューサーのKafkaデータ損失

In Buffer: 
Datum 1 - published 
Datum 2 - published 
. 
. ---->(Broker goes down for a while and reconnects...) 
. 
Datum 4 - published 
Datum 5 - published 

プロパティは、次のとおり構成されたバッファサイズより

bootstrap.servers=localhost:9092 
acks=all 
retries=1 
batch.size=16384 
linger.ms=2 
buffer.memory=33554432 
key.serializer=org.apache.kafka.common.serialization.IntegerSerializer 
value.serializer=org.apache.kafka.common.serialization.StringSerializer 
producer.type=sync 
buffer.size=102400 
reconnect.interval=30000 
request.required.acks=1 

データサイズ小.. 私が間違っている場所を知って助けてください...!

+0

正確に何をするのかわかりません。私は、ブローカーが行われている間にあなたがカフカに書こうとしているメッセージは、カフカによって肯定されていないと仮定します。メッセージが拒否された場合は、そのメッセージがKafkaに書き込まれておらず、プロデューサはメッセージの書き込みを再試行する必要があることを示します。 –

+0

はい、解決策は、ブローカが起動するまで何度も再試行し、最後のオフセットがコミットされ、再試行値がブローカに書き込まれます。 – peaceUser

答えて

1

正確に何をするのかわかりません。私はブローカーがダウンしている間にあなたがカフカに書こうとしているメッセージは、カフカに頼まれていないと仮定します。メッセージが拒否された場合は、そのメッセージがKafkaに書き込まれておらず、プロデューサーはメッセージの書き込みを再試行する必要があることを示します。

関連する問題