Spring Cloud Alibaba Nacos+Gateway503错误,No servers available for service
问题如下:
1.LoadBalancerCacheManager不可用,添加了下面的依赖还是不管用
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>
2.No servers available for service 找不到服务

网关application.yml配置如下
server: port: 88 spring: application: name: gulimall-gateway cloud: nacos: discovery: server-addr: 127.0.0.1:8848 gateway: routes: - id: admin_route #uri: lb://renren-fast uri: http://localhost:8080 predicates: - Path=/api/** filters: - RewritePath=/api/(?<segment>.*), /renren-fast/$\{segment}
uri: lb//demo-server 就会出现这个问题,但是 uri: http://localhost:8080却不会No servers available for service
由于springcloud2020弃用了Ribbon,因此Alibaba在2021版本nacos中删除了Ribbon的jar包,因此无法通过lb路由到指定微服务,出现了503情况。
另外还有可能出现这个错误:在classpath上发现的Spring MVC,与Spring Cloud Gateway不兼容

原因是因为spring cloud gateway 是建立在spring boot 2.x 和 spring webflux基础上的既:gateway 本身已经包含了spring mvc 的功能,正与提示的一样和spring boot 的web starter冲突了
解决方法:排除common中的spring-webmvc依赖
<dependency>
<groupId>com.atguigu.gulimall</groupId>
<artifactId>gulimall-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
</exclusion>
</exclusions>
</dependency>

浙公网安备 33010602011771号