码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2021-04-29 11:55:23      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:添加   描述   image   master   主机名   ref   注册   ring   情况下   

描述: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--问题(一)分布式服务调用失败

标签:添加   描述   image   master   主机名   ref   注册   ring   情况下   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!