dubbo的直连模式
多用于测试的时候,绕开注册中心,方便排查错误。
直连模式的配置不需要对provider端做任何更改,只需要对consumer端的spring.xml做出修改即可(如下红色行),两端配置内容如下:
——provider端内容:
——consumer端内容:
备注:
1)provider端的所有服务都注册到了2181上,consumer端只声明2182的注册中心,然后检测是否能访问到OrdersApi服务?
2)因为这时UserApi在2182中找不到,所以需要指定check="false"否则启动tomcat时报错,即使这样,在访问/getusers时也会报No provider的异常,原因同上。
3)如果需要直连多个地址,地址间用“,”号隔开。
上述配置完成后,通过浏览器访问http://localhost:8080/crmweb/getorders,成功。
1)接口和接口之间的配置互不影响,A用直连不影响B用注册用心
2)可绕过注册中心实现点对点连接,但使用场景有限,常用于测试时
3)无法支持集群
4)服务的地址不再透明,需要对地址进行维护,不利于大规模服务情况
1)直连成功后,启动dubbo-admin查看2182注册中心是否有提供者和消费者?
没有提供者和OrdersApi消费者,但是有userApi消费者。
2)其他配置不变,删除 url="dubbo://127.0.0.1:20880"后getorders是否可用?
不能,提示没有provider.
3)其他配置不变,删除 url="dubbo://127.0.0.1:20880",再加上2181的注册中心配置,getorders是否可用?如下所示:
答:可用,因为可通过2181的注册中心找到相应的服务。
(完结)
关注下方公众号发现更多精彩
获取更多资源请关注微信公众号:AKA程序王
原文:https://www.cnblogs.com/akachengxuwang/p/11715034.html