java如何使用Kafka和Spring Cloud stream生成多个输出?
我是卡夫卡的新手。我有一个关于高优先级、失败和审计三个主题的需求。我想从高优先级队列中读取事件并对其进行处理,将处理后的事件分别放入Failed和Audit主题中。一个输入主题(高优先级)&;两个输出主题(失败、审核)。我知道我们可以通过卡夫卡流做到这一点,但我想通过producer&;消费者问题
我使用的是Spring Cloud streams(函数式编程风格)
我使用函数,但函数只使用一个输入&;一个输出。我需要一个输入&;两个输出
@Bean
public Function<Message<String>,String> highPriorityConsumer(){
return (value) -> {
Acknowledgment acknowledgment = value.getHeaders().get(KafkaHeaders.ACKNOWLEDGMENT, Acknowledgment.class);
acknowledgment.acknowledge();
return value.getPayload();
};
}
spring.cloud.stream.bindings.highPriorityConsumer-in-0.destination=highpriority
spring.cloud.stream.bindings.highPriorityConsumer-out-0.destination=audit
spring.cloud.stream.bindings.postMess-out-0.destination=failed
spring.cloud.stream.function.definition=highPriorityConsumer;producer
请让我知道如何使用producer&;函数式编程风格的消费者
共 (0) 个答案