Spring 启动Kafka批量转发
Spring Boot Kafka Batch Forwarding
我已将我的消费者配置为批量接受来自某个主题的消息。如何转发到新主题?
我希望每条消费的消息都作为自己的消息转发。因此 X 条消息消耗量将产生 X 条消息。
这是我当前的设置:
@KafkaListener(topics = "input")
@SendTo("output")
public ConsumerRecords consume(ConsumerRecords records) {
// Do things
return records;
}
这是抛出的异常:
org.springframework.kafka.KafkaException: No method found for class java.util.ArrayList
不支持该功能。在任何情况下,您都不能将 ConsumerRecord
发送到 Producer
。
尽管如此
@KafkaListener(id = "foo", topics = "input")
@SendTo("output")
public List<String> consume(List<String> data) {
return data;
}
(其中 String
是反序列化器创建的类型)。
我已将我的消费者配置为批量接受来自某个主题的消息。如何转发到新主题?
我希望每条消费的消息都作为自己的消息转发。因此 X 条消息消耗量将产生 X 条消息。
这是我当前的设置:
@KafkaListener(topics = "input")
@SendTo("output")
public ConsumerRecords consume(ConsumerRecords records) {
// Do things
return records;
}
这是抛出的异常:
org.springframework.kafka.KafkaException: No method found for class java.util.ArrayList
不支持该功能。在任何情况下,您都不能将 ConsumerRecord
发送到 Producer
。
尽管如此
@KafkaListener(id = "foo", topics = "input")
@SendTo("output")
public List<String> consume(List<String> data) {
return data;
}
(其中 String
是反序列化器创建的类型)。