当前位置:网站首页>Gateway 根据服务名路由失败,报错 Service Unavailable, status=503
Gateway 根据服务名路由失败,报错 Service Unavailable, status=503
2022-07-06 09:17:00 【阿杆.】
记一次路由转发失败的经历
使用gateway+nacos,yaml配置如下,这里使用的是服务名称进行转发:
server:
port: 10010
spring:
application:
name: @[email protected]
cloud:
nacos:
server-addr: 127.0.0.1:8848 # nacos地址
gateway:
discovery:
locator:
enabled: true
routes:
- id: blogtest # 路由标识,必须唯一
uri: lb://blogtest # 路由的目标地址,lb为load balance,负载均衡
predicates: # 路由断言,判断请求是否符合规则
- Path=/test/** # 判断请求是否以/user开头
pom文件如下:
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
</dependencies>
然后就出现了服务无法访问的情况,一直报错
Whitelabel Error Page
This application has no configured error view, so you are seeing this as a fallback.
Wed May 18 15:38:29 CST 2022
[fd8c3a90-7] There was an unexpected error (type=Service Unavailable, status=503).
关键是控制台也没报错,很正常的那种,就很让我怀疑是自己的问题。
后面把路由地址改了一下,改成了使用http地址进行转发:
gateway:
routes:
- id: blogtest
uri: http://127.0.0.1:1236 # 这里改了
predicates:
- Path=/test/**
然后再到浏览器发送请求,成功了,可以正常访问。
想了一下觉得可能是Nacos版本和我项目的依赖版本不匹配的问题,还去把Nacos降级了一波,结果还是不行。
原因
后面看到一篇博客:https://blog.csdn.net/qq_41953714/article/details/116239716
在pom.xml文件中添加了一个依赖:
<!--客户端负载均衡loadbalancer-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
重新启动,果然可以了。
原因引用原作者的话
由于springcloud2020弃用了Ribbon,因此Alibaba在2021版本nacos中删除了Ribbon的jar包,因此无法通过lb路由到指定微服务,出现了503情况。
所以只需要引入springcloud loadbalancer包即可
边栏推荐
- Variable parameter principle of C language function: VA_ start、va_ Arg and VA_ end
- 选择法排序与冒泡法排序【C语言】
- inline详细讲解【C语言】
- Machine learning -- decision tree (sklearn)
- The dolphin scheduler remotely executes shell scripts through the expect command
- JS数组常用方法的分类、理解和运用
- Unit test - unittest framework
- I2C bus timing explanation
- GCC compilation options
- 小天才电话手表 Z3工作原理
猜你喜欢
高通&MTK&麒麟 手機平臺USB3.0方案對比
Unit test - unittest framework
I2C bus timing explanation
Feature of sklearn_ extraction. text. CountVectorizer / TfidVectorizer
Machine learning -- decision tree (sklearn)
JS變量類型以及常用類型轉換
RT thread API reference manual
Comparaison des solutions pour la plate - forme mobile Qualcomm & MTK & Kirin USB 3.0
Time slice polling scheduling of RT thread threads
ES6 grammar summary -- Part 2 (advanced part es6~es11)
随机推荐
There are three iPhone se 2022 models in the Eurasian Economic Commission database
[esp32 learning-1] construction of Arduino esp32 development environment
MySQL占用内存过大解决方案
Priority inversion and deadlock
Analysis of charging architecture of glory magic 3pro
STM32 如何定位导致发生 hard fault 的代码段
【ESP32学习-2】esp32地址映射
PT OSC deadlock analysis
ES6 grammar summary -- Part I (basic)
Basic operations of databases and tables ----- classification of data
电商数据分析--薪资预测(线性回归)
js题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
Basic use of pytest
.elf .map .list .hex文件
Important methods of array and string
Cannot change version of project facet Dynamic Web Module to 2.3.
荣耀Magic 3Pro 充电架构分析
Understanding of AMBA, AHB, APB and Axi
Amba, ahb, APB, Axi Understanding
FreeRTOS 任务函数里面的死循环