天天看點

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