并行创建多个API调用,但不需要等待使用Spring Boot项目反应器的任何其他响应 [英] Create multiple API call parallelly but don't wait to any other response using spring boot project reactor
本文介绍了并行创建多个API调用,但不需要等待使用Spring Boot项目反应器的任何其他响应的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
将给定的Monos压缩到一个新的Mono中,当所有给定的Monos都产生了一个Item时,将完成该Mono,但我想知道,我将并行调用多个API,但没有任何依赖,我希望在那个时候逐个公开可用的响应。
所以请帮忙解决这个问题。我已经使用了Mono.zip,但这是在等待所有响应到达。推荐答案
只需Flux#merge
。对出版商的订阅是迫切的(所有出版商一起订阅):
Flux.merge(Mono.just("response1").delayElement(Duration.ofSeconds(3)),
Mono.just("response2").delayElement(Duration.ofSeconds(1)),
Mono.just("response3").delayElement(Duration.ofSeconds(2)))
.doOnNext(System.out::println)
输出将为:
response2
response3
response1
这篇关于并行创建多个API调用,但不需要等待使用Spring Boot项目反应器的任何其他响应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文