一、通过修改版本号来区分本地版本
把本地的某些服务版本修改调,和测试环境的做区分,测试环境就不会访问到你本地启动的服务了。
提供者配置version:
<dubbo:provider timeout="10000" threadpool="fixed" threads="100"
accepts="1000" version="0.0.6"/>
消费端配置version:
和提供者配置相同的version
<dubbo:consumer version="0.0.6" />
二、使用telnet
1、dubbo从2.0.8版本开始增加了协议注册开关(register=“false”)
例如:<dubbo:registry address=“xxxxxx” register=“false”/>
可以关掉,不注册到配置中心,启动本地服务,使用telnet
2、使用telnet登录dubbo,进行调用
3、查看提供者都提供了什么服务,ls命令,ls com.cxxx.xxxx**
dubbo>ls
com.test.DemoService
dubbo>ls com.test.DemoService
queryDemoPageList
insertDemolist
4、调用方法
调用响应方法,可以在本地调试
dubbo> invoke com.test.DemoService.queryDemoPageList({"id":"100"}, 1, 2)
{"totalCount":1,"data":[{date":"2017-03-23 14:10:32","name":"张三","keyword":"222"}]}
三、直接访问本地URL
1、服务方
添加register=“false”
<dubbo:registry address="xxxxxx" register="false"/>
2、消费方
通过设置关联服务的URL地址,可以实现直连本地dubbo服务
例如:
<dubbo:reference id="xxxxService" interface="xxxxx.xxxxService"
protocol="dubbo" url="dubbo://127.0.0.1:28050"/>
四、多注册中心的连接
1.写两个注册中心地址,分别定义不同的id
2.在引入指定服务接口时需要加入registry属性指定注册中心定义的id
这样就实现 了多注册中心的连接,因为我本地电脑无法启动所有微服务,除了自己写的微服务之外的服务全部调用测试接口的服务,只有自己需要测试的服务连接本地的服务,用于调试就行了
注意
如果使用了公司的vpn,发现通过修改版本号的方式还是不行的,有多个IP,服务使用不了。
在dubbo.xml可以配置主机地址,这个不建议修改,只是调试用
<dubbo:protocol host="205.182.23.201">
还有些开源工具也可以用来调试本地环境,https://github.com/VIPJoey/doe