比如有接口TestService,在A项目中有实现TestServiceImpl1,在B项目中有TestServiceImpl2
现在A和B项目分别作为provider启动,注册中心用的是同一个zookeeper,并且注册端口是同一个,
这时先启动A正常,启动B时就有异常了,报错如下:
Caused by: org.jboss.netty.channel.ChannelException: Failed to bind to: /0.0.0.0:20889
1.不同的项目应该用不同的端口,或者不指定端口,系统自动分配,本身这个端口对客户端是没啥用的
2.同一个接口由不同的实现,provider在配置的时候可以通过version来区分,比如开发环境下,通过version可以定位到你开发机的provider,便于调试不同的项目端口号用不一样的
不同的实现用版本号区分
同一个接口的不同实现在dubbo中用group来进行区分的。这个是你使用同一个端口导致的1.先看看监控上是否存在两个服务,没有监控看zk,如果有就忽略这个问题
2.建议 同一个接口由不同的实现,provider在配置的时候可以通过version来区分
要通过group来进行区分的。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。