Dubbo3 舊配置規(guī)則

2022-04-02 10:13 更新

Dubbo 中舊版本的規(guī)則配置方式

向注冊(cè)中心寫(xiě)入動(dòng)態(tài)配置覆蓋規(guī)則。該功能通常由監(jiān)控中心或治理中心的頁(yè)面完成。

RegistryFactory registryFactory = ExtensionLoader.getExtensionLoader(RegistryFactory.class).getAdaptiveExtension();
Registry registry = registryFactory.getRegistry(URL.valueOf("zookeeper://10.20.153.10:2181"));
registry.register(URL.valueOf("override://0.0.0.0/com.foo.BarService?category=configurators&dynamic=false&application=foo&timeout=1000"));

其中:

  • ?override://? 表示數(shù)據(jù)采用覆蓋方式,支持 ?override ?和 ?absent?,可擴(kuò)展,必填。
  • ?0.0.0.0 ?表示對(duì)所有 IP 地址生效,如果只想覆蓋某個(gè) IP 的數(shù)據(jù),請(qǐng)?zhí)钊刖唧w IP,必填。
  • ?com.foo.BarService? 表示只對(duì)指定服務(wù)生效,必填。
  • ?category=configurators? 表示該數(shù)據(jù)為動(dòng)態(tài)配置類(lèi)型,必填。
  • ?dynamic=false? 表示該數(shù)據(jù)為持久數(shù)據(jù),當(dāng)注冊(cè)方退出時(shí),數(shù)據(jù)依然保存在注冊(cè)中心,必填。
  • ?enabled=true? 覆蓋規(guī)則是否生效,可不填,缺省生效。
  • ?application=foo ?表示只對(duì)指定應(yīng)用生效,可不填,表示對(duì)所有應(yīng)用生效。
  • ?timeout=1000? 表示將滿足以上條件的 ?timeout ?參數(shù)的值覆蓋為 1000。如果想覆蓋其它參數(shù),直接加在 ?override ?的 URL 參數(shù)上。

示例:

  1. 禁用提供者:(通常用于臨時(shí)踢除某臺(tái)提供者機(jī)器,相似的,禁止消費(fèi)者訪問(wèn)請(qǐng)使用路由規(guī)則)
    override://10.20.153.10/com.foo.BarService?category=configurators&dynamic=false&disbaled=true
  2. 調(diào)整權(quán)重:(通常用于容量評(píng)估,缺省權(quán)重為 100)
    override://10.20.153.10/com.foo.BarService?category=configurators&dynamic=false&weight=200
  3. 調(diào)整負(fù)載均衡策略:(缺省負(fù)載均衡策略為 random)
    override://10.20.153.10/com.foo.BarService?category=configurators&dynamic=false&loadbalance=leastactive
  4. 服務(wù)降級(jí):(通常用于臨時(shí)屏蔽某個(gè)出錯(cuò)的非關(guān)鍵服務(wù))
    override://0.0.0.0/com.foo.BarService?category=configurators&dynamic=false&application=foo&mock=force:return+null
提示
?2.2.0?以上版本支持


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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)