一、首先排查nacos
- id: admin_route
uri: lb://renren-fast
predicates:
- Path=/api/**
filters:
- RewritePath=/api/(?<segment>/?.*), /renren-fast/$\{segment}
首先gateway使用了负载均衡了,gateway会去nacos找这个服务是不是存在。
经排查,存在,那就不是nacos的问题。
二、loadblancer依赖问题
在Spring Cloud 2020
版本以后,默认移除了对Netflix
的依赖,其中就包括Ribbon,官方默认推荐使用Spring Cloud Loadbalancer
正式替换Ribbon
,并成为了Spring Cloud
负载均衡器的唯一实现
经过排查,依赖也是有的。不过没加版本号而已。后来加上了版本号,还是报503错误。
三、可能有多个依赖
把loadbalance依赖注释掉成功解决问题。
然后在maven的依赖树中查找,发现确实还有ribbon的依赖。两个依赖导致不生效。只留一个就完美解决了