dubbo注冊時會通過主機名尋找ip,會將內網ip注冊到zookeeper
如果我們調用外網服務器server的話是找不到的
會報如下錯誤
[DUBBO] client reconnect to 127.0.0.1:20880 find error . url: dubbo://127.0.0.1:20880/xxxxxxxxxx
解決方案:修改host,將主機名放到外網ip后
從Dubbo Admin可以看到注冊的服務ip已經是外網ip
可以調用到外網接口, 完美解決
實例配置:
[root@bank ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 47.11****.216 bank