客戶端負載均衡(Ribbon)六 環境搭建

2022-05-18 22:34:32 字數 3324 閱讀 2267

簡介

ribbon是netflix發布的開源專案,主要功能是提供客戶端的軟體負載均衡演算法,將netflix的中間層服務連線在一起。ribbon客戶端元件提供一系列完善的配置項如連線超時,重試等。簡單的說,就是在配置檔案中列出load balancer(簡稱lb)後面所有的機器,ribbon會自動的幫助你基於某種規則(如簡單輪詢,隨即連線等)去連線這些機器。我們也很容易使用ribbon實現自定義的負載均衡演算法。

示例**

建立ribbon-provider-consumer子工程,對於robbin,我們不用再去重新新增jar了,因為在eureka中就已經有了。

前幾節已經演示過,這裡就不多講了,如需要了解請點選進入

#

服務啟動埠號

server:port: 9001

#服務名稱(服務註冊到eureka名稱)

#客戶端註冊進eureka服務列表內

#該應用為註冊中心,不會註冊自己,預設true

register-with-eureka:true

#是否需要從eureka上獲取註冊資訊,預設true

fetch-registry: true

package

net.riking.springcloud.consumer.controller;

import

org.springframework.beans.factory.annotation.autowired;

import

import

import

org.springframework.web.bind.annotation.restcontroller;

import

org.springframework.web.client.resttemplate;

@restcontroller

public

class

userconsumercontroller

}

package

net.riking.springcloud.consumer;

import

import

import

org.springframework.cloud.client.loadbalancer.loadbalanced;

import

org.springframework.context.annotation.bean;

import

org.springframework.web.client.resttemplate;

public

class

public

static

void

main(string args)

@bean

@loadbalanced

//如果提供者服務為集群,當在請求時,擁有客戶端負載均衡的能力,

resttemplate resttemplate()

}

#

服務啟動埠號

server:port: 8001

#服務名稱(服務註冊到eureka名稱)

#客戶端註冊進eureka服務列表內

#該應用為註冊中心,不會註冊自己,預設true

register-with-eureka:true

#是否需要從eureka上獲取註冊資訊,預設true

fetch-registry: true

服務介面

package

net.riking.springcloud.provider.controller;

import

org.springframework.beans.factory.annotation.autowired;

import

org.springframework.beans.factory.annotation.value;

import

org.springframework.cloud.client.discovery.discoveryclient;

import org.springframework.web.bind.annotation.*;

@restcontroller

public

class

userprovidercontroller ")

private

string port;

public

string port()

}

package

net.riking.springcloud.provider;

import

import

import

org.springframework.cloud.netflix.eureka.enableeurekaclient;

@enableeurekaclient

///開啟對eurekaclient的支援,即:作為eureka客戶端,高版本可省略

public

class

public

static

void

main(string args)

}

idea工具 專案重複啟動方式

啟動工程後,訪問:http://eureka7001:7001/,我們可以看到有兩個提供方服務和乙個消費方服務註冊進eureka中,這時f環境搭建成功,如下圖

訪問http://localhost:9001/user/consumer/port  ,資訊如下:

再次訪問http://localhost:9001/user/consumer/port  ,資訊如下:

本來想好了自己寫,但是看了這篇文章(點選進入),然後就放棄,對於這篇文章,我感覺清晰明了,如果想深入ribbon可以看看。 

ribbon客戶端負載均衡

ribbon會儲存註冊中心應用,然後定時去更新,而不是每次都要先訪問註冊中心,再訪問應用 依賴org.springframework.cloud spring cloud starter netflix ribbon 複製 配置resttemplate bean是乙個方法級別上的註解,主要用在 co...

客戶端負載均衡 Ribbon

1.集群user server c v 改東西 user server pom.xml user server 3001artifactid user server 3001name parent pm.xml user server 3001module eureka client service...

ribbon客戶端負載均衡

參考 ribbon是netflix發布的負載均衡器,它有助於控制http和tcp的客戶端的行為。為ribbon配置服務提供者位址後,ribbon就可基於某種負載均衡演算法,自動地幫助服務消費者去請求。ribbon預設為我們提供了很多負載均衡演算法,例如輪詢 隨機等。當然,我們也可為ribbon實現自...