多注册中心
<dubbo:registry id=“dev” address=“10.20.141.150:9090,10.20.141.150:8090,10.20.141.150:8090”/>
<dubbo:registry id=“test” address=“10.20.141.151:9010” default=“false”/>
<dubbo:service interface=“com.alibaba.hello.HelloService” version=“1.0.0” ref=“helloService” registry=“dev,test”/>
多协议
<dubbo:protocol name=“dubbo” port=“20880”/>
<dubbo:protocol name=“hessian” port=“8080”/>
<dubbo:service id=“helloService” interface=“com.alibaba.hello.HelloService” version=“1.0.0” protocol=“dubbo,hessian”/>
服务分组
当一个接口多个实现时可以使用group
<dubbo:service group=“feedback” interface=“com.xxx.IndexService”/>
<dubbo:service group=“member” interface=“com.xxx.IndexService”/>
<dubbo:reference id=“feedbackIndexService” group=“feedback” interface=“com.xxx.IndexService”/>
<dubbo:reference id=“memberIndexService” group=“member” interface=“com.xxx.IndexService”/>
多版本
当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间不引用。
在低压力时间段,先升级一半提供者为新版本
再将所有消费者升级为新版本
然后将剩下的一半提供者升级为新版本
<dubbo:service interface=“com.foo.BarService” version=“1.0.0”/>
<dubbo:service interface=“com.foo.BarService” version=“2.0.0”/>
<dubbo:reference id="barService"interface=“com.foo.BarService” version=“1.0.0”/>
<dubbo:reference id="barService"interface=“com.foo.BarService” version=“2.0.0”/>
<dubbo:reference id=“barService"interface=“com.foo.BarService” version=”*"/>
令牌验证
防止消费者绕过注册中心访问提供者
在注册中心控制权限,以决定要不要下发令牌给消费者
注册中心可灵活改变授权方式,而不需修改或升级提供者
可以全局设置开启令牌验证:
<dubbo:provider interface=“com.foo.BarService” token=“true”/>
<dubbo:provider interface=“com.foo.BarService” token=“123456”/>
也可在服务级别设置:
<dubbo:service interface=“com.foo.BarService” token=“true”/>
<dubbo:service interface=“com.foo.BarService” token=“123456”/>
还可在协议级别设置:
<dubbo:protocol name=“dubbo” token=“true”/>
<dubbo:protocol name=“dubbo” token=“123456”/>
异步调用
基于NIO的非阻塞实现并行调用,客户端不需要启动多线程即可完成并行调用多个远程服务,相对多线程开销较小。
2.0.6及其以上版本支持
配置声明:
dubbo:referenceid="fooService"interface=“com.alibaba.foo.FooService”
dubbo:methodname="findFoo"async=“true”/
</dubbo:reference>
启动时检查
文末
我将这三次阿里面试的题目全部分专题整理出来,并附带上详细的答案解析,生成了一份PDF文档
- 第一个要分享给大家的就是算法和数据结构
- 第二个就是数据库的高频知识点与性能优化
- 第三个则是并发编程(72个知识点学习)
- 最后一个是各大JAVA架构专题的面试点+解析+我的一些学习的书籍资料
还有更多的Redis、MySQL、JVM、Kafka、微服务、Spring全家桶等学习笔记这里就不一一列举出来
[外链图片转存中…(img-VCOX0o3z-1716573469117)]
- 第三个则是并发编程(72个知识点学习)
[外链图片转存中…(img-PaTVHt1p-1716573469117)]
- 最后一个是各大JAVA架构专题的面试点+解析+我的一些学习的书籍资料
[外链图片转存中…(img-SLXnGA0q-1716573469118)]
还有更多的Redis、MySQL、JVM、Kafka、微服务、Spring全家桶等学习笔记这里就不一一列举出来