一、环境:
eclipse 2020版本
二、当时情况:
1、在maven父工程spring-cloud下面创建了三个maven子模块分别为spring-cloud-order、spring-cloud-server、spring-cloud-user
2、在没有使用负载均衡之前(即指定url)一切运行正常
3、订单的yml配置里的name和userController里名称都为service-eureka-order
发现问题:观察后发现是从user里到order的路径,即刚刚提到的userController里名称都为service-eureka-order有问题
三、网上搜索的解决办法总结:
1、基本上是说微服务名称不能用下划线(中划线可以)(吐槽:但姐姐我跟本不是这个问题 一查全这个 恼火)
2、ribbon版本问题,在pom里新增依赖修正ribbon的版本(但其实eureka里面 本来就有ribbon应该可以直接使用的,窃以为对我的问题用处很小)
四、我的解决办法:
直到看到了这篇博文:重学SpringCloud系列二之服务注册与发现---上_大忽悠爱忽悠的博客-CSDN博客_springcloud 服务发现
“加上@LoadBalanced注解之后,我们使用RestTemplate访问微服务的时候,就可以实现微服务多实例访问的负载均衡。注意:这里访问的地址是微服务的名称(大写),不再是某一个微服务实例的ip和端口。”(真的很感动!感谢博主)