当前位置:网站首页 > 技术博客 > 正文

spring cloud gateway搭建



本文将带你了解 Spring Cloud Gateway 的主要功能,它是一个基于 Spring Boot 和 Project Reactor 的网关。

Spring Cloud Gateway 提供开箱即用的路由机制,通常用于微服务应用中,把多个服务隐藏在 “Facade”(门面设计模式)后面。

Spring Cloud Gateway 专注于路由请求,它将请求转发给网关 Handler Mapping,由其决定如何处理与特定路由相匹配的请求。

从一个快速示例开始,看看 Gateway Handler 如何使用 解析路由配置:

注意,有几个核心的 API:

  • - 网关的主要 API。它由给定的标识(ID)、目的地(URI)和一组 和 定义
  • - Java 8 ,用于使用 Header、方法或参数匹配 HTTP 请求
  • - 标准的 Spring

与 Zuul 一样,Spring Cloud Gateway 也提供了将请求路由到不同服务的方法。

路由配置可以通过纯 Java(如第 2 节中的示例所示,)或属性配置来创建:

Spring Cloud Gateway 使用 Spring WebFlux 匹配路由。

它还包括许多内置的 Route Predicate 工厂。所有这些 Predicate 都与 HTTP 请求的不同属性相匹配。多个 Route Predicate 可通过逻辑 “and” 进行组合。

路由匹配既可以通过程序应用,也可以通过配置属性文件使用不同类型的 Route Predicate 工厂应用。

路由过滤器(Route Filter)可以修改传入的 HTTP 请求或传出的 HTTP 响应。

Spring Cloud Gateway 包含许多内置的 工厂,还可以创建自定义 Filter。

Spring Cloud Gateway 可与 Eureka Server 和 Consul 等服务发现和注册中心轻松集成:

会使用 在 exchange attribute 中查找 URI。

如果 URL 采用 lb scheme(如 ),它将使用 Spring Cloud 将名称(如 )解析为实际主机和端口。

未经修改的原始 URL 将被置于 attribute 中。

Spring Cloud Gateway 使用 Actuator API,这是一个著名的 Spring Boot 库,可为监控应用程序提供多种开箱即用的服务。

一旦安装并配置了 Actuator API,就可以通过访问 端点来查看网关监控功能。

现在,使用 Predicate 创建一个将 Spring Cloud Gateway 用作代理服务器的简单示例。

在 中添加当前版本的 依赖:

接下来,添加必要的依赖:

在 文件中创建一个简单的路由配置:

Application 类:

应用启动后,可以访问网址 ,检查创建的路由配置:

如你所见,相对网址 被配置为路由。因此,请求 后,会被重定向到 ,正如示例中配置的那样。

本文介绍了 Spring Cloud Gateway 的部分功能和组件。


Ref:

  • 上一篇: jvm 监控
  • 下一篇: 三态门有哪三态
  • 版权声明


    相关文章:

  • jvm 监控2025-03-26 21:01:05
  • 左移运算器2025-03-26 21:01:05
  • 实现一个单例模式2025-03-26 21:01:05
  • sql窗口函数和开窗函数2025-03-26 21:01:05
  • 江苏省计算机二级c语言编程题2025-03-26 21:01:05
  • 三态门有哪三态2025-03-26 21:01:05
  • centos7安装iftop2025-03-26 21:01:05
  • monkey测试作用2025-03-26 21:01:05
  • java数据库员工管理系统2025-03-26 21:01:05
  • c语言中malloc函数的用法2025-03-26 21:01:05