spring5.0响应式核心组件
1:HttpHandler
官方描述:HttpHandler 是一个简单的契约,只有一个方法来处理请求和响应。它是故意最小的,它的主要目的是成为不同HTTP服务器API的最小抽象。
Reactor Netty
官方示例 netty 服务器
HttpHandler handler = ...
ReactorHttpHandlerAdapter adapter = new ReactorHttpHandlerAdapter(handler);
HttpServer.create(host, port).newHandler(adapter).block();
2:WebHandler
API
该org.springframework.web.server
软件包以HttpHandler
合同为基础,提供通用Web API,用于通过多个WebExceptionHandler
,多个 WebFilter
和单个 WebHandler
组件链处理请求 。链可以WebHttpHandlerBuilder
通过简单地指向Spring来组合ApplicationContext
,其中组件被 自动检测,和/或通过向构建器注册组件。
虽然HttpHandler
有一个简单的目标来抽象使用不同的HTTP服务器,但 WebHandler
API旨在提供Web应用程序中常用的更广泛的功能集,例如:
3:过滤器
在WebHandler
API中,您可以使用a WebFilter
在过滤器和目标的其余处理链之前和之后应用拦截样式逻辑 WebHandler
。使用WebFlux配置时,注册a WebFilter
就像将它声明为Spring bean一样简单,并且(可选)通过使用@Order
bean声明或实现来表示优先级Ordered
。
看一堆官方文档,spring mvc有的,Spring WebFlux也支持.Spring WebFlux是提供了响应式http编程.可以和spring mvc并行.
但我在想,什么时候用Spring WebFlux.是单Spring WebFlux构建应用还是混合spring mvc并用.Spring WebFlux用在什么业务