WebFlux - WebClient
webclient负载均衡
一般的,定义 webclient使用负载均衡:
@Bean
@LoadBalanced
public WebClient.Builder builder(){
return WebClient.builder();
}
webclient负载均衡原理
常用类
在了解负载均衡之前,几个重要的类
- LoadBalancerWebClientBuilderBeanPostProcessor: @LoadBalanced 自动装配
- DeferringLoadBalancerExchangeFilterFunction: Deferring,延迟,顾名思义,用于延迟加载LoadBalancerExchangeFilterFunction
- ExchangeFilterFunction: webclient中的 filter 接口,实现类可以自定义拦截参数
- ReactorLoadBalancerExchangeFilterFunction: webclient 负载均衡主要实现类
- LoadBalancerBeanPostProcessorAutoConfiguration: WebClient.Builder自动装配配置类
- WebClientCustomizer: Webclient.Builder 自定义配置类,如增加filter
- WebClientAutoConfiguration: webclient 自动装配类