背景
作為后端服務負載、前后分離的主要手段,dubbo在業界中使用率還比較高。隨着Dubbo系統的增多,本地開發、調試就出現了麻煩之處
直接在開發本地起同樣一份服務
由於Dubbo采用負載均衡的策略,多次請求的情況下總會隨機一次到本地的服務上,有點兒看命的感覺。
修改Group
作為Dubbo支持的分Group策略,把各自開發人員獨立注冊一個Gruop是可行的。這樣需求把Consumer端和provider端同步進行修改,稍微有點兒麻煩。
而且還是會想注冊中心注冊一份服務列表。
直連
直連就是不向注冊中心注冊服務,防止測試環境的Dubbo請求分配到本地開發服務器上。
-
修改服務提供者配置文件
<dubbo:registry protocol="zookeeper" address="${dubbo.address}" file=".dubbo-registry/dubbo-registry.properties" register="false"/>
其中
register="false"
是主要起作用的配置,他的意思就是說,在本地起服務,不想注冊中心注冊服務這塊,以后會配置到filter中,dev.properties默認為false,test默認未true。以后測試環境部署test的配置文件
-
增加默認直連配置文件
在2.0以上版本自動加載${user.home}/dubbo-resolve.properties文件,不需要配置。
${user.home}指的是當前操作系統用戶目錄,如 Win7系統 Administrator的用戶目錄就是 C:\Users\Administrator
mac就是/Users/luoaz 之類的。配置內容如下
com.ai.trial.modules.trial.service.TlAccusedProcessService=dubbo://localhost:21006
com.ai.trial.modules.trial.service.TlProcessService=dubbo://localhost:21006
通過以上配置,指定的服務就不在去注冊中心找了,而是直接請求配置路徑,dubbo://localhost:21006
,其他未配置的再去配置中心找。
這樣可以很方便的進行調試了。
ps:如果懶省事兒,可以把所有的服務全都聲明一遍,以后就不需要管這個了