springcloud

ribbon 初体验

2020-02-09  本文已影响0人  木山手札

配置

      <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
        </dependency>
    @Bean
    @LoadBalanced
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }
ribbon:
  eager-load: # 饿汉加载
    enabled: true
  ReadTimeout: 2000 # 默认5s
  ConnectTimeout: 2000 # 默认2s
  MaxAutoRetries: 1 # 重试次数
  NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡策略
  1. ribbon在客户端负载均衡时默认是懒汉加载机制,实际请求时才会创建
  2. ribbon的配置可以针对特定的服务进行配置,没有指定特定服务,将全局生效

负载均衡策略

RandomRule 随机策略
RoundRobinRule 轮训策略,按顺序选择server
RetryRule 重试策略,在一个时间段内选择server不成功,则尝试选择一个可用server
BestAvailableRule 最低并发策略,从断路器关闭的server中选择并发连接数最低的,
AvailabilityFilteringRule 可用过滤策略
ResponseTimeWeightedRule 响应时间策略,根据server响应时间分配权中,响应时间长权重低,被选择的概率就低
ZooeAvoidanceRule 区域权衡策略,根据Zone选择(AWS Zone)

配置类

CommonClientConfigKey

上一篇下一篇

猜你喜欢

热点阅读