9得票1回答
Spring WebClient作为RestTemplate的替代方案

目前RestTemplate的javadoc声明: 注意:自5.0版本以来,非阻塞式反应org.springframework.web.reactive.client.WebClient提供了一种现代替代RestTemplate的方法,支持同步和异步以及流式场景的高效支持。 RestTemp...

7得票2回答
如果进行单个同步调用,Webflux会发生什么?

我将开始学习使用Spring Boot中的Webflux进行反应式Java编程。 我遇到了一个场景,这个场景中对数据库进行反应式地调用非常困难。 如果我在Mono中进行一次阻塞式的数据库调用,会发生什么? 代码可能如下所示... public Mono<ReturnThing&g...

7得票1回答
Project Reactor 的 Mono 类中的惰性求值 switchIfEmpty。

我正在寻找一种在原Mono为空时检索备用Mono的方法。我找到的最接近的方法是Mono.switchIfEmpty,但我与它的问题是无法传递lambda表达式,因此即使Mono具有非空值也会调用它。这有点像Optional.orElse与Optional.orElseGet之间的区别。 以下...

10得票1回答
当从Spring Web控制器返回flux时会发生什么?

我对响应式API还比较陌生,想知道当我们从Web控制器返回Flux时背后会发生什么。 根据spring-web文档: 处理响应式返回值的方法如下: 一个单值Promise是适配的,类似于使用DeferredResult。例如:Mono (Reactor) 或 Single (RxJava...

7得票1回答
使用响应式编程相较于ExecutorService有哪些好处?

如果两者都是异步的,那么在Java中使用响应式编程与ExecutorService有何用处?相比ExecutorService,响应式编程有哪些有效的优势?

9得票4回答
处理反应堆中的并行流

我已经从可迭代对象中创建了一个并行流,需要在每个可迭代对象上进行rest调用。但是,如果其中任何一个请求失败,所有剩余的请求都会失败。我希望无论成功还是失败,所有请求都能被执行。 我目前正在使用Flux.fromIterable并使用runOn操作符。 Flux.fromIterable(...

7得票3回答
Spring Web Reactive框架多部分文件问题

我正在尝试使用Spring的Reactive框架来实现图像上传,具体实现如下: @RestController @RequestMapping("/images") public class ImageController { @Autowired private IIma...

27得票1回答
ParallelFlux与flatMap()在阻塞I/O任务中的比较

我有一个Project Reactor链,其中包括一个阻塞任务(网络调用,我们需要等待响应)。我想同时运行多个阻塞任务。 似乎可以使用ParallelFlux或flatMap(),以下是最基本的示例:Flux.just(1) .repeat(10) .parallel(3) ...

9得票1回答
Netifi代理在Kubernetes集群上相比于直接使用RSocket应用程序通信有哪些改进?

假设我有一个 Kubernetes 集群,我在其中部署使用 RSocket 通信的 Spring Boot 应用程序。为了相互调用,它们将使用 Kubernetes 服务名称,因此我们将依赖于该“注册表”进行发现和路由。 另一方面,Netify 提供了一个可以在 Kubernetes 上部署...

12得票1回答
在Project Reactor中包装阻塞I/O

我有一个使用spring-webflux的API,在服务层需要从一个使用JDBC的现有存储库中读取。 在研究了这个主题后,我希望将阻塞数据库调用的执行与其余非阻塞异步代码分开处理。 我定义了一个专用的jdbcScheduler:@Bean public Scheduler jdbcSchedu...