gpt4 book ai didi

unit-testing - KafkaTestUtils.getRecords() 只返回第一个发送的记录

转载 作者:行者123 更新时间:2023-12-05 02:14:45 26 4
gpt4 key购买 nike

发送 4 条记录:

producer.send(new ProducerRecord<>("my-topic", 0, "key1", "value1"));
producer.send(new ProducerRecord<>("my-topic", 0, "key2", "value2"));
producer.send(new ProducerRecord<>("my-topic", 0, "key3", "value3"));
producer.send(new ProducerRecord<>("my-topic", 0, "key4", "value4"));

使用 KafkaTestUtils.getRecords() 只获取第一次发送的记录;

final ConsumerRecords<String, OrderBookViewItem> records = KafkaTestUtils.getRecords(consumer, 10000);

使用 consumer.poll() 获取所有 4 个;

final Iterable<ConsumerRecord<String, OrderBookViewItem>> records = consumer.poll(1000).records("my-topic");

如何调整 KafkaTestUtils 以返回所有记录或它是错误?

最佳答案

它只是返回 Kafka 在 poll() 上给我们的任何内容,该方法不知道要获取多少条记录。

您可以多次调用它,或者您可以尝试设置消费者属性 fetch.min.bytesfetch.max.wait.ms 以便 poll() 等待更多数据。

参见 the kafka documentation有关这些属性的更多信息。

关于unit-testing - KafkaTestUtils.getRecords() 只返回第一个发送的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53087422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com