SpringCloud 通過設(shè)置Properties自定義Ribbon客戶端

2023-11-22 14:29 更新

從版本1.2.0開始,Spring Cloud Netflix現(xiàn)在支持通過將屬性設(shè)置為與Ribbon文檔兼容來自定義Ribbon客戶端。

這使您可以在啟動時(shí)在不同環(huán)境中更改行為。

以下列表顯示了受支持的屬性>:

  • <clientName>.ribbon.NFLoadBalancerClassName:應(yīng)實(shí)施ILoadBalancer
  • <clientName>.ribbon.NFLoadBalancerRuleClassName:應(yīng)實(shí)施IRule
  • <clientName>.ribbon.NFLoadBalancerPingClassName:應(yīng)實(shí)施IPing
  • <clientName>.ribbon.NIWSServerListClassName:應(yīng)實(shí)施ServerList
  • <clientName>.ribbon.NIWSServerListFilterClassName:應(yīng)實(shí)施ServerListFilter
這些屬性中定義的類優(yōu)先于使用@RibbonClient(configuration=MyRibbonConfig.class)定義的beans和Spring Cloud Netflix提供的默認(rèn)值。

要為名為users的服務(wù)名稱設(shè)置IRule,可以設(shè)置以下屬性:

application.yml。 

users:
  ribbon:
    NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.WeightedResponseTimeRule

有關(guān)Ribbon提供的實(shí)現(xiàn),請參見Ribbon文檔。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號