![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Ribbon源码解析
会coding的厨子
这个作者很懒,什么都没留下…
展开
-
rabbion相关类(LoadBalancerStats、ServerListUpdater)介绍:
负载均衡数据记录LoadBalancerStats public class LoadBalancerStats { String name; //zone相关信息,默认用不到 volatile Map<String, ZoneStats> zoneStatsMap = new ConcurrentHashMap<String, ZoneStat...原创 2019-07-05 10:40:20 · 821 阅读 · 0 评论 -
Ribbon 源码详解(一):默认初始化加载的bean
@LoadBalanced注解的源码: @Target({ ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) @Documented @Inherited @Qualifier public @interface LoadBalanc...原创 2019-07-05 10:42:11 · 607 阅读 · 0 评论 -
Ribbon 源码详解(二):Ribbon如何获取服务列表
如何获取服务列表:用于获取服务位置, 1、(RibbonClientConfiguration)return newZoneAwareLoadBalancer<>(config, rule, ping, serverList, serverListFilter, serverListUpdater); 2、(ZoneAwareLoadBalancer)publicZoneAw...原创 2019-07-05 10:42:55 · 1667 阅读 · 0 评论 -
Ribbon 源码详解(三):负载均衡过程
@Configuration @RibbonClient(name = "default-test") public class DefaultConfiguration { @Bean @LoadBalanced public RestTemplate restTemplate() { return new RestTemplate(); ...原创 2019-07-05 10:44:01 · 276 阅读 · 0 评论 -
Ribbon 源码解析(四):重试
Ribbon 源码解析(四):重试 LoadBalancerAutoConfiguration @Configuration @ConditionalOnClass(RetryTemplate.class) static class RetryAutoConfiguration { @Bean public RetryTemplate retryTemplate() { } @...原创 2019-07-05 10:45:13 · 454 阅读 · 0 评论 -
Ribbon超时与重试配置(不包含Feign和Zuul)
1、默认配置(不生效): 此时配置,超时和重试都不会生效。原因: RestTemplate默认是使用SimpleClientHttpRequestFactory,内部是调用jdk的HttpConnection,默认超时为-1,设置的超时时间虽然会加载到配置类当中,但是执行的时候不会获取。 2、超时与重试设置 此时,超时和重试都会生效。超时时间按照requestFactor...原创 2019-07-05 10:47:59 · 461 阅读 · 0 评论 -
Ribbon 负载均衡的规则
内置负载均衡规则类 规则描述 RoundRobinRule 简单轮询服务列表来选择服务器。它是Ribbon默认的负载均衡规则。 AvailabilityFilteringRule 对以下两种服务器进行忽略: (1)在默认情况下,这台服务器如果3次连接失败,这台服务器就会被设置为...转载 2019-07-05 10:46:19 · 628 阅读 · 0 评论