Spring Cloud負載均衡(二)

2021-09-19 19:56:52 字數 2657 閱讀 2793

package com.example.springcloudlesson6;

import org.springframework.cloud.client.discovery.enablediscoveryclient;

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

import org.springframework.cloud.netflix.ribbon.ribbonclient;

import org.springframework.cloud.netflix.ribbon.ribbonclients;

import org.springframework.context.annotation.bean;

import org.springframework.web.client.resttemplate;

@ribbonclients()

@enablediscoveryclient

public static void main(string args)

//宣告resttemplate

@loadbalanced//resttemplate的行為變化

@bean

public resttemplate resttemplate()

}

spring-cloud-lesson-6-eureka-server為例

1.啟用@enableeurekaserver

package com.example.springcloudlesson6eurekaserver;

import org.springframework.cloud.netflix.eureka.server.enableeurekaserver;

@enableeurekaserver

public static void main(string args)

}

##定義應用名稱

##配置埠

server.port=10000

##取消向註冊中心註冊

eureka.client.register-with-eureka=false

##取消向註冊中心獲取註冊資訊,例項資訊

eureka.client.fetch-registry=false

##解決peer/集群連線問題

3.啟動eureka server

##服務提供方

##服務埠

server.port=8080

##關閉註冊

#eureka.client.enabled=false

##連線 eureka server url

##服務提供方主機

service-provider.host=localhost

##提供方埠

service-provider.port=9090

service-provider.name=spring-cloud-service-provider

###配置服務提供方的ribbon

##服務提供方

##服務埠

server.port=9090

##關閉註冊

#eureka.client.enabled=false

##連線eureka server

在啟動兩台 服務提供方例項

負載均衡示意圖

程式介面示意圖

通過重新整理重連後的結論為,三個伺服器的權重是一致的,是以輪詢的方式進行連線

ribbonloadbalancerclient

ribbonloadbalancercontext

負載均衡器

iloadbalancer

規則介面

irule

iruleipingstrategy

SpringCloud負載均衡

ribbon負載均衡應用 目標 配置啟動resttemplate,訪問http user service user 8獲取服務資料 需求 可以使用ribbon負載均衡演算法從服務位址列表中選擇乙個服務位址,訪問該位址獲取服務資料 實現步驟 1.啟動多個user service 9091,9092 2...

Spring Cloud 負載均衡

在spring cloud構件微服務系統中,loadbalancer作為服務消費者的負載均衡器,有兩種使 式,種是和resttemplate相結合,另 種是和feign相結合,feign已經預設整合loadbalancer 這裡我們使用 裡面的02 payment 微服務進行改造 server po...

SpringCloud 負載均衡 Ribbon

spring cloud ribbon是基於netflix ribbon實現的一套客戶端 負載均衡工具 負載均衡介紹 nginx負載均衡和ribbon區別 nginx是集中式的負載均衡,ribbon是程序內的負載均衡 ribbon其實就是乙個軟負載均衡的客戶元件,它可以和其他所需請求的客戶端結合使用...