搭建网关服务
搭建网关服务步骤:
1、创建新的module,引入SpringCloudGateway的依赖和nacos的服务发现依赖:
<!--网关依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> <!--nacos服务发现依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
2、编写路由配置及nacos地址
server: port: 10010 spring: application: name: gateway cloud: nacos: server-addr: localhost:8848 # nacos地址 gateway: routes: - id: user-service #路由标记,必须唯一 uri: lb://userservice #路由目标地址 lb:loadBalance predicates : #判断请求是否符合规则 - Path=/user/** #路由断言,判断路径是否是以user开头,如果是则符合 - id: order-service uri: lb://orderservice predicates: - Path=/order/**
网关具体过程:
用户端访问:127.0.0.1:10010/user/1
网关匹配访问地址,接收到用户的访问请求:
1、网关没有业务处理逻辑,因此基于路由规则进行判断即predicates定义的规则。
2、从Nacos注册中心拉取对应的服务uri服务名称
3、负责均衡,发送请求。
网关搭建步骤:
1、创建项目,引入nacos服务发现和gateway依赖
2、配置application.yml,包括服务基本信息、nacos地址、路由
路由配置包括:
1、路由id:路由的唯一标示
2、路由目标(uri):路由的目标地址,http代表固定地址,lb代表根据服务名负载均衡
3、路由断言(predicates):判断路由的规则
4、路由过滤器(filters):对请求或响应做处理