跳至主要內容

Spring Cloud Gateway (503 Service Unavailable)

bsfc.tech小于 1 分钟架构技术CaseSpring Cloud Gateway

Spring Cloud Gateway (503 Service Unavailable)

问题描述

503 Service Unavailable

问题原因

  • 由于netflix组件进入维护模式,spring cloud 2020.0.x开始移除netflix相关组件,当使用lb://SERVICE时,spring cloud gateway中由于缺少原有的ribbon负载均衡组件,而导致服务不可用。
  • 对于nacos使用,我想当然地对服务进行命名空间,服务组分类,导致不在同一个命名空间,或者在同一个命名空间不在同一个组的服务,无法被彼此发现,此时,网关也呈现出503 Service Unavailable。

解决方法

  1. 添加相关负载均衡依赖spring-cloud-starter-loadbalancer
<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-loadbalancer</artifactId>
  <version>x.x.x</version>  
</dependency>
  1. 使用nacos时将微服务统一划归相同命名空间,相同服务组!由此,我的理解,管理多个项目属于一个命名空间,管理同一个项目多个微服务模块属于一个服务组。