1 新增規則類:
注意: 官方文件明確給出了警告:
這個自定義配置類不能放在 @componentscan 所掃瞄的當前包下以及子包下,否則自定義的配置類就會被所有的 ribbon 客戶端所共享,達不到特殊化定製的目的了。
package com.atguigu.myrule;
import com.netflix.loadbalancer.irule;
import com.netflix.loadbalancer.randomrule;
import org.springframework.context.annotation.bean;
import org.springframework.context.annotation.configuration;
/** * 自定義負載均衡規則類
*/@configuration
public
class
myselfrule
}
2 主啟動類新增 @ribbonclient
在啟動該微服務的時候就能去載入我們的自定義 ribbon 配置類,從而使配置生效
package com.atguigu.springcloud;
import com.atguigu.myrule.myselfrule;
import org.springframework.cloud.netflix.eureka.enableeurekaclient;
import org.springframework.cloud.netflix.ribbon.ribbonclient;
@enableeurekaclient
@ribbonclient
(name =
"cloud-provider-service"
,configuration = myselfrule.
class
)public
class
ordermain80
}
3 測試
多次重新整理,是隨機出現 serverport ,負載規則就更改為隨機了。
ribbon替換負載均衡規則
去查詢我們的ribbon會發現有乙個介面irule,然後去檢視 快捷鍵ctrl h 下irule的實現類,發現有其他的輪詢規則 在這裡插入描述 然後再去ribbon官方檢視,發現不能把自定義負載均衡方法放自動配置類下,所以我們需要自己去建立乙個目錄用來存放均衡規則。這是我的目錄 然後我們在myrul...
Ribbon負載均衡
在resttemplate feign zuul中都整合了ribbon負載均衡,其中ribbon負載均衡通過iruler介面來實現,總共有6種實現類 其中預設配置方式為簡單輪詢,自定義配置有兩種 1 配置config ribbonclients defaultconfiguration defaul...
Ribbon負載均衡
ribbon主要功能是提供客戶端的軟體負載均衡演算法,提供一系列完整的配置項,例如連線超時 重試等。在eureka的自動配置依賴模組spring cloud starter eureka中,已經整合了ribbon,可以直接使用ribbon來實現客戶端的負載均衡 在eureka中使用ribbon十分簡...