服务发布/发现
问题1:提供者的ip注册到zk上,ip地址不正确
原因:是服务器有多个网卡,解决的办法就是在配置dubbo时,把host指定上:
<dubbo:protocol host="192.168.xx.xx" name="dubbo" port="20880" />
问题2:本地服务注册到服务器dubbo上,注册、消费者调用成功,在dubbo上的IP是本机ip;
把服务发布到服务器上,注册到服务器dubbo上,注册上去的ip不是服务器的ip,出现ip乱入问题。
思路1:在dubbo暴露服务的时候指定ip,和问题1解决方案一致
思路2:去掉服务器的DNS配置,将/etc/resolv.conf 配置文件中的nameserver吸怪成服务器ip
思路3:在服务器上/etc/hosts,上配置主机名和注册服务的IP。如:192.168.23.180 host2
问题3:开发和测试的时候,绕开注册中心,只测试指定提供者
服务点对点直连
使用映射文件${user.home}/dubbo-resolve.properties,用java -Ddubbo.resolve.file=xxx.properties指定文件路径
文件中加入:
com.alibaba.xxx.XxxService=dubbo://localhost:20890