|
对于最新稳定版本,请使用 Spring Integration 7.0.0! |
反应性建议
从5.3版本开始,aReactiveRequestHandlerAdvice可用于请求消息处理程序,产生单答复。
一个BiFunction<Message<?>,Mono<?>,出版商<?>>必须为此提供建议,且称为Mono.transform()操作员对截获者产生的回复表示handleRequestMessage()方法实现。
通常,这样的单当我们希望通过以下方式控制网络波动时,必须进行定制化暂停(),重试()以及类似的辅助操作员。
例如,当我们可以通过WebFlux客户端发送HTTP请求时,可以使用以下配置来避免等待超过5秒的响应:
.handle(WebFlux.outboundGateway("https://somehost/"),
e -> e.customizeMonoReply((message, mono) -> mono.timeout(Duration.ofSeconds(5))));
这消息参数是消息处理程序的请求消息,可用于确定请求作用域属性。
这单参数是该消息处理程序的结果handleRequestMessage()方法实现。
嵌套的Mono.transform()也可以从该函数调用,例如无功断路器。