Spring云流-基于内容的路由



我正在尝试在最新版本的Spring Cloud流中使用基于内容的路由。根据这份文件->基于内容的路由,它提到了如何在遗留系统/StreamListener中使用它。

这是我的代码与StreamListener

@StreamListener(target = EventChannels.FILE_REQUEST_IN
, condition = "headers['saga_request']=='FILE_SUBMIT'")
public void handleSubmitFile(@Payload FileSubmitRequest request) {

}
@StreamListener(target = EventChannels.FILE_REQUEST_IN
, condition = "headers['saga_request']=='FILE_CANCEL'")
public void handleCancelFile(@Payload FileCancelRequest request) {

}

通过使用条件,可以将消息路由到两个不同的函数。

我正在尝试使用如下的函数接口方法来消费消息。

@Bean
public Consumer<String> consumeMessage(){
return event -> {
try {
LOGGER.info("Consumer is working: {}", event);
} catch (Exception ex) {
LOGGER.error("Exception while processing");
}
};
}

如何在功能中实现类似的基于内容的路由?TIA。

其他细节→

  1. 春季启动版本- 2.3.12.RELEASE
  2. 春季云版-霍克斯顿。SR11

你看过这个吗- https://docs.spring.io/spring-cloud-stream/docs/3.1.4/reference/html/spring-cloud-stream.html#_event_routing?我们提供了两种不同的路由模型TO和FROM。所包含的链接包含示例,因此请查看它并随时发布任何后续内容

相关内容

  • 没有找到相关文章

最新更新