3.2.2 Ribbon客户端负载

负载均衡的概念

在这里插入图片描述

服务端负载均衡

在这里插入图片描述

客户端负载均衡

在这里插入图片描述

Ribbon集成示例

在这里插入图片描述

Ribbon的核心知识

在这里插入图片描述

Ribbon相关的初始化方式

在这里插入图片描述

Ribbon的IRule

在这里插入图片描述

容错机制

在这里插入图片描述

Ribbon与RestTemplate

在这里插入图片描述

在这里插入图片描述

Ribbon的基本使用

  1. 引入相关jar
<dependency>
  <groupId>org.springframe.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
  1. 添加配置
server:
  port: 8083

spring:
  application:
    name: consumer-demo


##改造配置
eureka:
  client:
    enabled: false


##1:定义一个serverlist给我们使用负载均衡
##格式{servcid}:ribbon:listOfServers
hello-server:
  ribbon:
    listOfServers: localhost:8001,localhost:8002


logging:
  level:
    org:
      springframework:
        cloud: debug
    com:
      netflix: debug
  1. 在启动类上添加注解

@RibbonClients(

​ @RibbonClient(value = “hello-server”)

)

  1. 改造请求
		@Autowired
    LoadBalancerClient loadBalancerClient;

    @GetMapping("index")
    public Object getIndex(){
        ServiceInstance serviceInstance = loadBalancerClient.choose("hello-server");
        String ip = serviceInstance.getHost();
        int port = serviceInstance.getPort();
        return restTemplate.getForObject("http://"+ip+":"+port,String.class,"");
    }

Ribbon重试机制启动

引入jar包就可以启动重试机制。

<dependency>
  <groupId>org.springframe.retry</groupId>
  <artifactId>spring-retry</artifactId>
</dependency>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章