ribbon替換負載均衡規則

2021-10-24 14:03:01 字數 1618 閱讀 8197

去查詢我們的ribbon會發現有乙個介面irule,然後去檢視(快捷鍵ctrl+h)下irule的實現類,發現有其他的輪詢規則:

![在這裡插入描述](

然後再去ribbon官方檢視,發現不能把自定義負載均衡方法放自動配置類下,所以我們需要自己去建立乙個目錄用來存放均衡規則。

這是我的目錄

然後我們在myrule的package下建立類myselfrule:

**如下

package com.zsp.myrule;

import com.netflix.loadbalancer.irule;

import com.netflix.loadbalancer.randomrule;

import org.springframework.context.annotation.bean;

import org.springframework.context.annotation.configuration;

import org.springframework.web.client.resttemplate;

@configuration

public

class

myselfrule

}

最後,去主啟動類裡面開啟

@ribbonclient(name = 「cloud-payment-service」,configuration = myselfrule.class)

package com.zsp.springcloud;

import com.zsp.myrule.myselfrule;

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

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

@enableeurekaclient

@ribbonclient

(name =

"cloud-payment-service"

,configuration = myselfrule.

class

)public

class

ordermain80

}

效果:第一次重新整理

第二次重新整理

第三次重新整理

說明我們更換負載均衡為隨機策略成功

Ribbon 負載規則替換

1 新增規則類 注意 官方文件明確給出了警告 這個自定義配置類不能放在 componentscan 所掃瞄的當前包下以及子包下,否則自定義的配置類就會被所有的 ribbon 客戶端所共享,達不到特殊化定製的目的了。package com.atguigu.myrule import com.netfl...

Ribbon負載均衡

在resttemplate feign zuul中都整合了ribbon負載均衡,其中ribbon負載均衡通過iruler介面來實現,總共有6種實現類 其中預設配置方式為簡單輪詢,自定義配置有兩種 1 配置config ribbonclients defaultconfiguration defaul...

Ribbon負載均衡

ribbon主要功能是提供客戶端的軟體負載均衡演算法,提供一系列完整的配置項,例如連線超時 重試等。在eureka的自動配置依賴模組spring cloud starter eureka中,已經整合了ribbon,可以直接使用ribbon來實現客戶端的負載均衡 在eureka中使用ribbon十分簡...