@ LoadBalanced注释的RestTemplate有时会从尤里卡那里通过服务名称获得错误的服务地址

问题描述 投票:0回答:1

我使用springcloud构建系统,包括许多微服务。对于某些接口调用,我使用@LoadBalance注释的resttemplate来实现负载平衡,并使用eureka作为注册中心。但是,当我调用不同微服务之间的接口时,resttemplate有时会连接到错误的服务。例如,我有服务A,B,C,当服务A调用服务B的接口时,由@LoadBalance注释的resttemplate将首先通过服务名称从eureka查找实际的ip&port,然后构建实际的url并将请求发送到目标服务器,但有时,当我调用服务B的接口时,它将找到服务C的ip&port,这会导致调用失败。这种情况很少发生,但神经质消失了,我困扰了很长时间,有人可以给我一些建议吗?谢谢。

spring-cloud resttemplate ribbon netflix-eureka netflix-ribbon
1个回答
0
投票

我昨天了解了原因:这是春天云Dalston.RELEASE(https://github.com/spring-cloud/spring-cloud-commons/issues/224)中的错误,我们碰巧使用了此版本。 Spring Cloud已在Dalston.SR2中修复了此错误,现在可以正常使用

© www.soinside.com 2019 - 2024. All rights reserved.