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