Hier ist mein kafka Nachricht Produzent:Verbrauchen nur bestimmte partion Nachricht
ProducerRecord producerRecord = new ProducerRecord(topic, "k1", message);
producer.send(producerRecord);
hier ist mein Verbraucher
TopicPartition partition0 = new TopicPartition(topic, 0);
consumer.assign(Arrays.asList(partition0));
final int minBatchSize = 200;
List<ConsumerRecord<String, byte[]>> buffer = new ArrayList<>();
while (true) {
ConsumerRecords<String, byte[]> records = consumer.poll(100);
for (ConsumerRecord<String, byte[]> record : records) {
buffer.add(record);
System.out.println(record.key() + "KEY: " + record.value());
Wie ist es möglich, nur topic
Nachricht k1
als Trennwand Schlüssel zu verbrauchen
Mit "Partition Key' k1' "denke ich, dass Sie eigentlich" Nachrichtenschlüssel 'k1'" meinen. Kafka wählt irgendwelche Schlüssel für Sie aus. Wenn Sie eine Partition konsumieren, müssen Sie jede Nachricht von dieser Partition konsumieren. Ob Sie etwas damit machen oder es einfach fallenlassen, wenn es nicht den richtigen Schlüssel hat, liegt ganz bei Ihnen. – Harald
Sie sagen, dass beim Empfangen von Nachrichten ich tun soll 'if (msg.key(). Equals ("k1") ' – manish
Ja, das ist der Weg zu gehen. – Harald