pom依赖配置
<!-- Springcloud2020开始弃用了Ribbon,因此Alibaba在2021版本nacos中删除了Ribbon的jar包,改用SpringCloudLoadbalancer 来实现负载均衡 -->
<!-- FIXME ========================================================================= SpringCloudLoadbalancer -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
yml配置
spring:
# 服务名称
application:
name: springCloudGateway
# SpringCloud配置
cloud:
# TODO nacos配置中心、注册中心
nacos:
server-addr: 192.168.213.148:8848 # nacos访问地址
username: nacos # nacos登陆账号
password: nacos # nacos登陆密码
config:
# nacos中配置文件的读取方式:${spring.application.name}-${spring.profile.active}.${spring.cloud.nacos.config.file-extension}
# 默认Nacos的配置文件会覆盖本地的配置文件
context-path: /nacos # 访问地址
namespace: b2d90f05-6fb6-4735-a1c7-c4ed2e4587d2 # 命名空间(对应开发环境)
group: springcloudalibaba # 所属分组(对应开发项目的别名)
file-extension: yaml # 配置文件后缀
discovery:
namespace: b2d90f05-6fb6-4735-a1c7-c4ed2e4587d2 # 命名空间(对应开发环境)
group: springcloudalibaba # 所属分组(对应开发项目的别名)
# TODO 负载均衡
loadbalancer:
enabled: true # 默认开启loadbalancer
nacos:
enabled: true # 手动开启nacos负载均衡
# TODO 网关配置
gateway:
# 路由机制
discovery:
locator:
# true 默认路由机制
# 开启服务注册和发现功能,服务网关自动根据服务发现为每一个服务创建一个路由,这个路由将以(大写服务名)开头的请求路径转发到对应的服务中
# 访问地址:127.0.0.1:8800/大写服务名/服务上下文/Controller/Method
#
# false 关闭默认路由机制,需要手动配置routes,默认通过路由名进行跳转的方式将失效,将请求路径上的服务名配置为小写
# 访问地址:127.0.0.1:8800/小写写服务名/服务上下文/Controller/Method
enabled: false
lower-case-service-id: true
# 路由地址
routes:
# TODO 基于 【BFF-AUTH】 服务的路由配置
- id: BFF-AUTH-ROUTE
uri: lb://bffAuth
predicates:
- Path=/springCloudGateway/auth/**
filters:
- StripPrefix=1
- RewritePath=/auth/(?<segment>.*),/bffAuth/$\{segment}
nacos负载均衡配置