dubbo + zookeeper本地发布服务调用时正常
将dubbo服务发布到服务器上,本地应用启动时报错:
client reconnect to 192.168.30.110:20880 find error . url: dubbo://192.168.30.110:20880/xxxxxxxxxx类似错误,大致意思是无法连接,或者找不到对应的服务
服务配置信息如下:
<dubbo:protocol name="dubbo" port="6347" host="127.0.0.1" />解决方案:
1.发现ip为192.168.30.110,说明暴露的是服务器本地ip,本地上如果不能直接和服务器内网通信则无法连接
2.查找相应资料,博客解释dubbo会默认根据主机名称获取ip
3.将hosts文件配置映射,新加一行 :外网ip 主机名称,将主机名称映射到外网ip
4.windows下可通过计算机右键属性查看计算机全名就是主机名称,linux下可通过hostname命令查看主机名称
5.修改完成后重新启动dubbo服务,打开dubbo控制台查看发现此时暴露的已经是外网ip,再启动消费端应用发现可以正常访问
6.一般情况物理机这样设置之后可以直接访问,由于我部署的服务器是虚拟机,访问的端口是外网端口再映射到内网,所以这里我需要运维将内网端口和外网端口保存一致才可以访问,比如原来是服务器的内网端口20880对应外网端口20888,实际上我调用dubbo接口需要访问20888,这里需要统一,比如将内外网端口都统一为20880
Dubbo暴露外网IP
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。