Ribbon启动原理
2020-08-13 17:51:27 24 举报
Ribbon 启动原理
作者其他创作
大纲/内容
@Bean注入List
@RibbonClient、@RibbonClients
注入 LoadBalancerInterceptor
LoadBalancerAutoConfiguration
@Bean
LoadBalancerInterceptor
SmartInitializingSingleton
对每个 restTemplates 调用 RestTemplateCustomizer.customize()把 LoadBalancerInterceptor 加入到 restTemplate 的拦截列表 interceptors
RibbonClientSpecification
spring-cloud-netflix-ribbon 包
RestTemplateCustomizer
defaultConfigType,默认的配置类,会加到所有创建的 context 中
@Configuration@After( eureka )依赖于 eureka 客户端
@LoadBalanced@Autowire拿到所有 restTemplate
List<RestTemplate> restTemplates
RibbonLoadBalancerClient
spring-cloud-common 包
RibbonAutoConfiguration
RibbonClientConfiguration
通过 NamedContextFactory,在调用 ribbon 的时候把这下面的 bean 注入到对应的 context 中
@Configuration
会自动转换成这个@Bean
注入
SpringClientFactory
调用 intercept 拦截的时候就是调用 client.execute() 方法
@Bean注入 LoadBalancedClient
0 条评论
下一页