私はKafka 0.10.2.0を使用しています。私には3人のブローカーがいて、フェールオーバーテストをしています。ときどきカフカブローカーの1人が堂々と閉じられたとき、私はデータを失っています。 カフカのブローカ構成:カフカブローカーでデータを失うのを防ぐ方法
zookeeper.connection.timeout.ms=6000
num.partitions=50
min.insync.replicas=2
unclean.leader.election.enable=false
group.max.session.timeout.ms=10000
group.min.session.timeout.ms=1000
消費者の設定:
props.put(ConsumerConfig.GROUP_ID_CONFIG, getTopicName() + "group");
props.put(ConsumerConfig.CLIENT_ID_CONFIG, getClientId());
props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest");
props.put(ConsumerConfig.REQUEST_TIMEOUT_MS_CONFIG, 30000);
props.put(ConsumerConfig.HEARTBEAT_INTERVAL_MS_CONFIG, 500);
props.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, 3000);
プロデューサーの構成:
props.put(ProducerConfig.LINGER_MS_CONFIG, 1);
props.put(ProducerConfig.BUFFER_MEMORY_CONFIG, 33554432);
props.put(ProducerConfig.MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION, 1);
props.put(ProducerConfig.CLIENT_ID_CONFIG, getClientId());
props.put(ProducerConfig.MAX_BLOCK_MS_CONFIG, 800);
props.put(ProducerConfig.RETRIES_CONFIG, Integer.MAX_VALUE);
props.put(ProducerConfig.REQUEST_TIMEOUT_MS_CONFIG, 800);
私はカフカブローカーを介してデータを失う停止するように何ができますか?
のACK = ALL'を参照してくださいhttp://kafka.apache.org/documentation/#producerconfigsの 'configセットプロデューサーであります –
私はすでにプロデューサーにacks allを追加しました。 – melihcoskun
不正なリーダー選挙が無効になっていて、acks = allの場合、データを失ってはいけません。このシナリオを確実に再現できる場合は、潜在的なバグを[email protected](http://kafka.apache.org/contact)に報告するか、Jiraを開いてください:https://issues.apache.org/jira/browse/KAFKA-1?jql = project%20%3D%20KAFKA –