码迷,mamicode.com
首页 > 其他好文 > 详细

@FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本

时间:2019-06-19 23:26:45      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:遇到   调试运行   显示   code   步骤   最新版   调试   ima   k8s   

今天遇到了很奇葩的问题,我本机的是以test环境启动的,调用另一个服务接口的时候返回参数却不同,调用接口是没错,怎么会这样,排查了很久,发现在eureka上注册的另一个服务是testone环境,而这个人testone是在k8s容器外面, 我部署的另一个服务是在k8s容器内部的。所以,造成了一直在调用k8s容器外同一个服务,实际我要调用k8s内部的这个服务。

 

下面是截图大概介绍下步骤:

首先,先排查   active profiles 配置启动环境为test, 并确保启动成功(启动成功后的日志显示test)

技术图片

 

其次,把需要调用的另一方服务部署在test环境并启动(我们公司自己的项目,所以,我可以部署),然后到eureka上查询到此项目,可以看到有两个地址,然后点击上面打开,会看到地址,然后,此地址端口号后面写上swagger,到swagger上找到此项目的接口,可以看到正好是我刚才调用的接口,但是参数是旧参数,这个地址所在的服务项目,虽然也是我需要的,但是,这个在k8s容器外面,我没有部署最新版(因为我们的服务都移动k8s容器里了,外面的都弃用),而注册到eureka是容器外的,所以,要么让容器内的注册到eureka上,要么部署容器外的最新版项目。

 

还有一点需要注意,我当前调试运行的自己的项目是位于k8s容器内部。

 

技术图片

 

@FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本

标签:遇到   调试运行   显示   code   步骤   最新版   调试   ima   k8s   

原文地址:https://www.cnblogs.com/fenglangjuxu/p/11055596.html

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