dubbo配置
1 dubbo:registry和dubbo:reference dubbo:service
dubbo:registry對應一個注冊中心,每個registry都有一個id,reference和service都有一個registry的屬性,這個屬性就是它們對應的registry的id。
1.1 dubbo:registry的屬性
id,該注冊中心的id;
protocol,表示是使用zookeeper還是redis,還是其它的注冊中心。
address,注冊中心的ip地址和端口號。
1.2 dubbo:reference的屬性
dubbo:reference是dubbo消費者引用的服務。
registry,從指定的注冊中心獲取服務列表,如果不設置的話,就會從所有的注冊中心獲取服務列表然后合并。
id,這個和服務提供方的bean id是對應的嗎?是對應的,為什么要對應呢?因為在進行rpc的時候,應該需要把這個id發過去,這樣就能夠迅速的找到對應的服務的bean了。是這樣的嗎?應該是這樣的,因為如果只是靠interface是不夠的,因為同一個interface的話可能會有多個實現。
interface,服務的接口,這個需要和provider的對應,這個interface一般在單獨的api中定義好。
check,是否在dubbo啟動時就檢查服務是否可用。
version,服務的版本,這個需要和服務提供者的版本一致。
filter,做一些業務無關的邏輯,比如記一些log之類的事情。
1.3 dubbo:service的屬性
executes,每個服務的每個方法最大的請求并行數目。
2 dubbo:consumer和dubbo:provider
dubbo:consumer為dubbo:reference缺省值進行配置,
dubbo:provider為dubbo:service缺省值進行胚子。
?
3 關于consumer和provider的timeout
配置的超時以consumer的timeout為準,就是需要服務至少在該時間內返回一個結果。但是provider的timeout也是有參考意義的,因為服務的提供者知道自己的服務能夠在多長時間內返回一個結果。就算是高并發情況下也應該給出一個確定的值,。
4 為什么consumer和provider都配置負載均衡
無論是在consumer還是在provider配置負載均衡,它們本質上都是一樣的,因為如果是在provider端配置的負載均衡的話,會被同步到consumer端。所以,一般情況下都是在consumer端配置負載均衡。
如果在consumer不配置負載均衡的話,默認使用的是provider端配置的負載均衡,如果provider不配置負載均衡的話,默認使用的是隨機策略的負載均衡,首先設置權重,然后按照權重設置隨機概率,權重高的概率也就大。
5 dubbo:application
應用信息配置,比如當前應用的名字。
?
轉載于:https://www.cnblogs.com/hustdc/p/9007914.html
總結
- 上一篇: 中国昌盛控股集团股票代码
- 下一篇: 发现一个CentOS第三方源epel的仓