用途:基于 Spring Cloud Gateway 搭建 API 网关,统一处理路由、过滤、限流与熔断。
主要能力:YAML 配置默认过滤器(如 DedupeResponseHeader、AddResponseHeader)与路由;路由使用 Path 断言,配合 StripPrefix、CircuitBreaker(含 fallbackUri)、RequestRateLimiter 等过滤器;globalcors 跨域配置;apigen.gateway 的 enabled、rate-limit.enabled、default-limit 开关。Java 侧可用 RouteLocator 构建路由,含 stripPrefix、addRequestHeader、circuitBreaker、retry、requestRateLimiter、rewritePath;可自定义 GatewayFilter(如 JWT 校验后写入 X-User-Id、X-User-Roles)与 GlobalFilter(日志、X-Request-Id)。熔断用 Resilience4J 配置滑动窗口、失败率、半开状态与超时;限流用 RedisRateLimiter 与 KeyResolver(按用户、API Key 或 IP);支持 Eureka 服务发现与 discovery.locator。
使用方式:在 Spring Boot 配置中声明路由与过滤器,通过 @Configuration 定义 RouteLocator、RedisRateLimiter、KeyResolver,实现 GatewayFilter/GlobalFilter 并注册 FilterFactory,另需编写 fallback 控制器;测试使用 @SpringBootTest、@AutoConfigureWebTestClient 与 WebTestClient 验证路由、鉴权和熔断回退。
适用场景:需要统一入口的多微服务路由、鉴权、限流和容错场景。
限制:资料未提供版本要求、依赖坐标、部署方式与许可信息。