【发布时间】:2018-07-27 15:27:40
【问题描述】:
我知道响应式控制器应该返回 Flux<T> 或 Mono<T>,这意味着它在 http 处理程序级别上是响应式的。
但是,如果我们在具有 非反应性代码的控制器中执行外部 http 调用,这必须等待很长时间 IO 直到该 http 调用响应,会发生什么如果 10000 个用户同时使用 http 调用此控制器,会发生什么情况?假设只有 一个 线程来处理控制器内部的代码,那么在 IO 期间会处理 更多 个请求吗?
如果不是,我们是否必须使用响应式代码(例如 WebClient 和 ReactiveRepository)在 DB 上调用外部 http API 和 CRUD?
如果是,如何实施?因为它只是几行非响应式代码,Java 怎么知道“嘿,它正在等待响应,让我们先处理另一个事件”?
【问题讨论】:
标签: java spring spring-webflux project-reactor reactive