天天看点

Spring Cloud - Ribbon负载均衡

Spring Cloud - Ribbon负载均衡

一.前言

二.创建项目

三.配置项目

3.1 springcloud-ribbon

3.1.1 添加@EnableDiscoveryClient

3.1.2 pom文件

3.1.3 application.yml

3.1.4 相关代码

3.2 springcloud-service-provider

四.案例测试

在Spring Cloud - Ribbon的真情独白中,我们已经给他们介绍了ribbon。今天我们通过一个小案例,来简单入门ribbon;

Spring Cloud - Ribbon负载均衡

在今天的案例中,我们启动三个服务提供方,结合ribbon,来看看具体的负载均衡效果。

Spring Cloud - Ribbon负载均衡
Spring Cloud - Ribbon负载均衡
Spring Cloud - Ribbon负载均衡

经过上面一顿骚操作,我们的模块就成功创建了[<code>controller和service后来创建</code>];

Spring Cloud - Ribbon负载均衡

<code>ConsumerController</code>:

<code>IConsumerService</code>:

<code>ConsumerServiceImpl</code>:

本次测试的服务提供方,我们还是使用Spring Cloud - Eureka Client文中提到的<code>springcloud-service-provider</code>模块,但是我们需要做一些修改。

<code>ProviderController:</code>

首先,我们启动注册中心<code>springcloud-eureka-server</code>

Spring Cloud - Ribbon负载均衡

接着,我们启动<code>springcloud-ribbon</code>

Spring Cloud - Ribbon负载均衡

下面,我们启动三个服务,在启动之前,需要阅读如何在IntelliJ Idea中同时启动不同端口的两个实例

Spring Cloud - Ribbon负载均衡

如上图所示,依次修改端口号启动三个服务;

Spring Cloud - Ribbon负载均衡

至此,我们项目启动完成;

接下来,我们测试一下客户端负载均衡:

Spring Cloud - Ribbon负载均衡

通过上面的图片,我们可以看到请求负载到了我们的三个服务,实现了我们开头中提到的目标;

示例代码 milogenius-springcloud