您的位置:首页 > 编程语言 > Java开发

spring cloud ribbon与提供者不在同一台服务器访问失败的问题

2018-03-24 00:00 155 查看
最近这两天一直有一个问题很困惑,那就是ribbon跟提供者以及eureka在同一台服务器的时候访问一切正常,而把ribbon放到其他服务器的时候,虽然同样注册进了eureka,但是却始终访问失败的问题。

这个时候提供者的资源文件如下

spring.application.name=hello-service

eureka.client.service-url.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/eureka

eureka的注册信息如下



经过思索,我发现其实是http://HELLO-SERVICE/hello解析不了,因为注册进去的其实只有主机名,也就是说只有相同主机才能解析。所以提供者的资源文件修改如下

spring.application.name=hello-service

eureka.client.service-url.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/eureka

eureka.instance.instance-id=${spring.cloud.client.ipAddress}:${server.port}

eureka.instance.prefer-ip-address=true

eureka.instance.hostname= ${spring.cloud.client.ipAddress}

此时eureka的注册信息如下



因为hello-service已经转换成了ip地址,此时用其他服务器注册的ribbon再来访问该提供者时已经一切正常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐