path-based
的命名规范首先,从Dubbo支持的配置来源说起,默认有四种配置来源:
下图展示了配置覆盖关系的优先级,从上到下优先级依次降低:
本地配置文件的优先级最低 如果有任何一个另外的配置来源,都会将本地配置文件覆盖
倒数第二是编程配置方式,如spring (xml、springboot或注解) 及API的方式,他会覆盖本地文件,就是将本地配置文件写成代码的形式
再高一级的是外部化配置,外部化配置目的之一是实现配置的集中式管理,外部化配置和其他本地配置在内容和格式上并无区别,可以简单理解为dubbo.properties
的外部化存储,配置中心更适合将一些公共配置如注册中心、元数据中心配置等抽取以便做集中管理。
优先级最高的是JVM的-D启动参数
retries="2"
来设置重试次数(不含第一次)。重试次数配置如下:
<dubbo:service retries="2" />
或
<dubbo:reference retries="2" />
forks="2"
来设置最大并行数。按照以下示例在服务提供方和消费方配置集群模式
<dubbo:service cluster="failsafe" />
或
<dubbo:reference cluster="failsafe" />
在集群负载均衡时,Dubbo 提供了多种均衡策略,缺省为 random
随机调用。
<dubbo:parameter key="hash.arguments" value="0,1" />
<dubbo:parameter key="hash.nodes" value="320" />
配置<dubbo:service interface="..." loadbalance="roundrobin" />
<dubbo:reference interface="..." loadbalance="roundrobin" />
<dubbo:service interface="...">
<dubbo:method name="..." loadbalance="roundrobin"/>
</dubbo:service>
<dubbo:reference interface="...">
<dubbo:method name="..." loadbalance="roundrobin"/>
</dubbo:reference>