Spring Cloud全解析:负载均衡之Ribbon简介

Ribbon简介

Ribbon是一种客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起,提供了一系列完善的配置如连接超时、重试等,Ribbon会自动的帮助基于某种规则(如简单轮询、随机连接等)去连接那些机器,也可以自定义的负载均衡算法

依赖

xml 复制代码
<!-- ribbon -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>

如果是F版及以上的话,需要使用该依赖

xml 复制代码
<!-- 新版ribbon -->
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>

配置负载

java 复制代码
@Bean
@LoadBalanced //表示访问需要进行负载均衡
public RestTemplate loadRestTemplate(){
    return new RestTemplate();
}

在使用restTemplate调用其他微服务时,注意服务名称中不要带有_,否则无法访问到

访问

java 复制代码
private static final String LOAD_REST_URL_PREFIX = "http://MICRO-SERVICE-DEPT-PROVIDER";

loadRestTemplate.getForObject(LOAD_REST_URL_PREFIX + "/dept/get/" + id, Dept.class);

服务提供者将服务注册到注册中心中,服务消费者从注册中心拉取可用的服务列表,使用ribbon来负载均衡请求服务提供者

https://zhhll.icu/2021/框架/微服务/springcloud/负载均衡/Ribbon/1.Ribbon简介/

相关推荐
goTsHgo18 分钟前
Spring Boot 自动装配原理详解
java·spring boot
卑微的Coder26 分钟前
JMeter同步定时器 模拟多用户并发访问场景
java·jmeter·压力测试
pjx98736 分钟前
微服务的“导航系统”:使用Spring Cloud Eureka实现服务注册与发现
java·spring cloud·微服务·eureka
多多*1 小时前
算法竞赛相关 Java 二分模版
java·开发语言·数据结构·数据库·sql·算法·oracle
爱喝酸奶的桃酥1 小时前
MYSQL数据库集群高可用和数据监控平台
java·数据库·mysql
唐僧洗头爱飘柔95272 小时前
【SSM-SSM整合】将Spring、SpringMVC、Mybatis三者进行整合;本文阐述了几个核心原理知识点,附带对应的源码以及描述解析
java·spring·mybatis·springmvc·动态代理·ioc容器·视图控制器
骑牛小道士2 小时前
Java基础 集合框架 Collection接口和抽象类AbstractCollection
java
alden_ygq3 小时前
当java进程内存使用超过jvm设置大小会发生什么?
java·开发语言·jvm
triticale3 小时前
【Java】网络编程(Socket)
java·网络·socket
淘源码d3 小时前
什么是ERP?ERP有哪些功能?小微企业ERP系统源码,SpringBoot+Vue+ElementUI+UniAPP
java·源码·erp·erp源码·企业资源计划·企业erp·工厂erp