test

作者: tgor | 来源:发表于2019-02-02 10:26 被阅读0次

# Sprint-Ribbon与负载均衡

标签(空格分隔): Java-Spring

---

![PNG 图像.png-276.1kB][1]

**Ribbon**是一个基于HTTP与TCP的客户端负载均衡器。

服务端列表去轮询访问以达到均衡负载的作用。当 Ribbon与 Eureka联合使用时, Ribbon 的服务实例清单 Ribbon Serverlist会被 Discoveryenabledniwsserverlist重写,扩展成从Eureka注册中心中获取服务端列表。同时它也会用 Niwsdiscoveryping来取代Ping,它将职责委托给Eureka来确定服务端是否已经启动。在本章中,我们对Ribbon不做详细的介绍,读者只需要理解它在Eureka服务发现的基础上,实现了一套对服务实例的选择策略,从而实现对服务的消费。下一章我们会对 Ribbon做详细的介绍和分析。

客户端示例:RestTemplate + Ribbon

```java

@SpringBootApplication

@EnableDiscoveryClient

@RestController

public class RibbonClient {

    public static void main(String[] args) {

        SpringApplication.run(RibbonClient.class, args);

    }

    @Bean

    @LoadBalanced //实现负载均衡

    RestTemplate restTemplate() {

        return new RestTemplate();

    }

    @Autowired

    private RestTemplate restTemplate;

    @GetMapping("/ribbonInvoke")

    private String ribbonInvoke() {

        RibbonMessage msg = restTemplate.getForObject("http://TG-RIBBON-SERVICE/ribbonAccept", RibbonMessage.class);

        System.out.println(msg);

        return msg.toString();

    }

}

```

调用后输出日志示例:

```java

2019-02-01 16:15:53.953  INFO 11404 --- [nio-8201-exec-1] c.n.l.DynamicServerListLoadBalancer      : DynamicServerListLoadBalancer for client TG-RIBBON-SERVICE initialized: DynamicServerListLoadBalancer:{NFLoadBalancer:name=TG-RIBBON-SERVICE,current list of Servers=[192.168.14.196:8056],Load balancer stats=Zone stats: {defaultzone=[Zone:defaultzone; Instance count:1; Active connections count: 0; Circuit breaker tripped count: 0; Active connections per server: 0.0;]

},Server stats: [[Server:192.168.14.196:8056; Zone:defaultZone; Total Requests:0; Successive connection failure:0; Total blackout seconds:0; Last connection made:Thu Jan 01 08:00:00 CST 1970; First connection made: Thu Jan 01 08:00:00 CST 1970; Active Connections:0; total failure count in last (1000) msecs:0; average resp time:0.0; 90 percentile resp time:0.0; 95 percentile resp time:0.0; min resp time:0.0; max resp time:0.0; stddev resp time:0.0]

]}ServerList:org.springframework.cloud.netflix.ribbon.eureka.DomainExtractingServerList@53c23742

```

  [1]: http://static.zybuluo.com/zero1036/afoqlykn1ujhynyr36if234h/PNG%20%E5%9B%BE%E5%83%8F.png

相关文章

  • 泰斯拓

    TEST test Test TEST test test test test test test test

  • makedown test

    test test test test test test test ####### test test test...

  • 无标题文章

    test test test test test test test test

  • 2019-01-14

    test test test test test test test test

  • test2

    test test test test test test

  • 简书

    简书 test test test test test test

  • Test

    Test test Test Test Test

  • 无标题文章

    test test test test test

  • 此处为标题?

    测试test测试test测试test测试test测试test测试test测试test测试test测试test测试t...

  • Mardown

    Mardown test+test+test+test+test

网友评论

      本文标题:test

      本文链接:https://www.haomeiwen.com/subject/zncssqtx.html