spring cloud集成原生gateway
简介
Spring Cloud Gateway 是 Spring Cloud 的一个全新项目,该项目是基于 Spring 5.0,Spring Boot 2.0 和 Project Reactor 等技术开发的网关,它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式。
Spring Cloud Gateway 作为 Spring Cloud 生态系统中的网关,目标是替代 Netflix Zuul,其不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全,监控/指标,和限流。
一、开发前注意事项
spring boot版本使用2.0.3以上版本 ,2.0.3版本与gateway有冲突推荐使用spring boot最新版本,本次使用2.2.0集成
二、添加项目需要使用的依赖包
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> |
三、简单使用演示
1.在配置文件中配置路由路径
spring: application: name: demo-gateway jackson: serialization: indent-output: true cloud: nacos: discovery: server-addr: 114.55.60.132:8848 gateway: enabled: true routes: - id: consume predicates: - Path=/consumer/** filters: - StripPrefix=1 uri: lb://demo-consumer - id: provider predicates: - Path=/provider/** filters: - StripPrefix=1 uri: lb://demo-provider |
2.两个测试服务
两个服务中各有一个根据id查询用户信息的接口
3.测试
在浏览器地址栏输入
可以看出我们通过gateway路由到了不同的服务