1.启动服务检查
假设a依赖b,b依赖c,如果c没有启动,而b启动了,此时如果b启动了检查到c没有启动,那么b就会报错,导致a也不可用。
这时候就应该通过check=false设置关闭启动检查服务,默认是true。
应用标签:
dubbo:reference
dubbo:consumer check=”false” 没有服务提供者的时候不会报错
dubbo:registry check=false
dubbo:provider等
2.多协议支持
dubbo支持的协议:
其中dubbo RMI是基于TCP协议实现的,而hessian webservice http等是基于http协议的
多协议的使用场景:
1.开发项目是选择哪种协议能够更好的支持当前的场景
2.老项目改造时,想要继续沿用之前的协议
通过配置protocol标签来配置协议,配置协议时要将协议对应的jar包添加到pom文件中,这里的hessian协议是一个http协议,所以要引入hessian servlet jetty的jar包
生产者改造:
zookeeper节点信息,可以看到,只有hessian的节点
然后对消费者进行改造:protocol默认是dubbo,这里改为hessian
3.多注册中心支持
生产者改造:增加registry的id,然后指定服务注册中心
消费者:想调用哪个注册中心就将下面的地址改为哪个
4.多版本支持
生产者:version改为2.0,注册中心上对应的也变成了2.0
消费者: