首页 > 编程语言 > 详细

SpringCloud--问题(一)分布式服务调用失败

时间:2021-04-28 21:48:46      阅读:24      评论:0      收藏:0      [点我收藏+]

描述:gateway路由访问部署在 其他主机 的服务失败

一、问题分析

1、gateway路由访问报错如下

技术分享图片

2、查看eureka注册中心 master-service 服务注册了两个

技术分享图片

可以看出,gateway路由分发到了 windows10.microdone.cn 上。在eureka注册中心找到该服务确实已被注册,但是从gateway报错信息可以看到 java.net.UnknownHostException: windows10.microdone.cn:Name or service not know,说明gateway无法识别 该地址,从而路由失败。

默认情况下,eureka使用 机器的主机名 进行服务注册,可以看到注册表中zbp1gbi4yst5no4u1rapxzi windows10.microdone.cn两个服务使用的都是 机器的主机名,而通过 机器的主机名 gateway无法正常路由到对应的服务器

二、解决方案

使用IP进行服务注册,这样gateway就能通过ip成功找到对应的服务
服务端添加如下配置,让服务使用IP进行服务注册

eureka:
  instance:
    prefer-ip-address: true

问题解决

SpringCloud--问题(一)分布式服务调用失败

原文:https://www.cnblogs.com/code-tong/p/14714591.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!