不止于网关:AI驱动 + 智能容灾 + K8s原生,打造企业级API治理新标杆

# API网关统一管理平台 - 企业级全栈解决方案

> :rocket: **AI赋能的企业级API网关,让微服务治理更简单、更智能、更高效**

***

## :pushpin: 项目概述

这是一个功能完备的企业级API网关统一管理平台,采用****控制平面/数据平面分离架构**,整合了**路由管理、安全防护、流量控制、可观测性监控、AI智能分析、Kubernetes容器编排****等核心功能。

### :bullseye: 核心价值

- **统一管理**: 路由、服务、认证策略、限流规则集中管理

- **智能分析**: AI驱动的异常检测、性能预测、告警自动生成

- **高可用**: Redis故障平滑降级(Shadow Quota)、Nacos故障快照缓存

- **K8s原生**: 一键部署网关实例到Kubernetes集群,多环境隔离

- **生产就绪**: 561个单元测试,完善的错误码规范,企业级审计

### :building_construction: 技术架构

```

┌─────────────────────────────────────────────────────────┐

│ 控制平面 (gateway-admin :9090) │

│ React UI ──:play_button: REST API ──:play_button: MySQL ──:play_button: Nacos配置推送 │

│ 路由管理 | 服务管理 | SSL证书 | AI分析 | K8s部署 │

└────────────────────────┬────────────────────────────────┘

                     │ 配置推送 (<1秒)

                     ▼

┌─────────────────────────────────────────────────────────┐

│ 数据平面 (my-gateway :80/:8443) │

│ 请求 ──:play_button: 过滤器链 ──:play_button: 后端服务 │

│ 安全 :play_button: IP过滤 :play_button: 认证 :play_button: 限流 :play_button: 熔断 :play_button: 重试 :play_button: 负载均衡 │

└─────────────────────────────────────────────────────────┘

```

### :hammer_and_wrench: 技术栈

| 层级 | 技术 | 版本 |

| -------- | --------------------------------------- | ----- |

| **网关核心** | Spring Cloud Gateway + Project Reactor | 4.1 |

| **控制平面** | Spring Boot + Spring Security | 3.2 |

| **前端** | React + TypeScript + Ant Design | 19 |

| **配置中心** | Nacos + Consul (SPI) | 2.4.3 |

| **服务发现** | Nacos + Consul + 静态服务 | - |

| **限流** | Redis + Caffeine + Shadow Quota | - |

| **熔断器** | Resilience4j | 2.1 |

| **监控** | Prometheus + Micrometer + OpenTelemetry | - |

| **容器** | Kubernetes + Fabric8 | - |

| **AI** | GPT-4/Claude3/Qwen/DeepSeek/Ollama | - |

***

## :artist_palette: 核心功能展示

### :one: 统一管理平台

**核心功能:**

- :bar_chart: **总览看板**: 所有网关实例运行状态、心跳监控一目了然

- :globe_showing_europe_africa: **多环境支持**: dev/staging/prod环境独立管理,配置完全隔离

- :green_circle: **状态可视化**: 健康/警告/故障三级状态指示

- :high_voltage: **快速操作**: 一键启停、配置更新、日志查看

***

### :two: 过滤器链管理

**四大模块:**

#### 流量控制

- **限流器**: 基于QPS的动态限流,支持分布式和本地模式

- **多维限流器**: 全局/租户/用户/IP多维度限流

#### 安全防护

- **IP过滤器**: 黑白名单过滤,支持CIDR格式

- **认证策略**: JWT/API Key/Basic/HMAC/OAuth2五种方式

- **安全防护**: XSS/SQL注入防护

- **请求验证**: JSON Schema验证

#### 弹性容错

- **超时控制**: 连接/响应超时独立配置

- **熔断器**: Resilience4j智能熔断

- **重试策略**: 失败请求自动重试

#### 数据转换

- **请求/响应转换**: 协议转换(JSONXML)、字段映射

**性能优化**: IP过滤器前置执行,**TPS提升37%**

***

### :three: 网关监控

**监控维度:**

- :chart_increasing: **JVM指标**: 堆内存/GC次数/GC时间/内存区域分布

- :globe_with_meridians: **HTTP指标**: 请求/秒、平均响应时间、错误率、状态码分布

- :laptop: **系统指标**: CPU使用率、内存使用

- :bar_chart: **实时/历史模式**: 当前状态与历史趋势对比

**性能特点:**

- 刷新频率: 5秒

- 指标精度: 毫秒级

- 历史数据: 可配置时间范围

***

### :four: Kubernetes管理

**核心功能:**

- :office_building: **集群管理**: 多K8s集群接入,kubeconfig导入

- :package: **Pod管理**: 实时显示Pod状态、IP、重启次数

- :rocket: **一键部署**: 管理控制台直接部署到K8s

- :locked: **命名空间隔离**: 每个实例独立Nacos命名空间

**实例规格:**

| 规格 | CPU | 内存 | 副本 | 场景 |

| ------ | ---- | ----- | – | — |

| small | 0.5核 | 512MB | 1 | 开发 |

| medium | 1核 | 1GB | 2 | 测试 |

| large | 2核 | 2GB | 3 | 生产 |

| xlarge | 4核 | 4GB | 5 | 高并发 |

***

### 5️ 流量拓扑

**核心功能:**

- :world_map: **实时拓扑图**: 自动绘制网关→路由→服务流量关系

- **关键指标**: 请求/秒、平均延迟、错误率一目了然

- :counterclockwise_arrows_button: **自动刷新**: 支持自动/手动刷新

- :magnifying_glass_tilted_left: **节点搜索**: 快速定位特定服务

**拓扑节点:**

- :blue_circle: 网关 → :gem_stone: 路由 → 服务 → :orange_circle: 客户端

***

### :six: 压力测试

**12种测试模板:**

- :fire: **冒烟测试**: 5用户/1分钟

- :bar_chart: **负载测试**: 50用户标准性能测试

- **压力测试**: 200用户高负载测试

- :chart_increasing: **峰值测试**: 500用户突发流量模拟

- ️ **浸泡测试**: 30用户长时间稳定性验证

- :bullseye: **断点测试**: 100用户寻找瓶颈

**测试报告:**

- :chart_increasing: 实时指标: QPS、P50/P90/P95/P99延迟、错误率

- :bar_chart: 历史对比: 与历史测试结果对比

- :robot: AI分析: AI自动生成优化建议

- :page_facing_up: 报告导出: PDF/Excel/JSON/Markdown

***

### :seven: 路由管理

**核心功能:**

- :counterclockwise_arrows_button: **动态路由**: 创建/编辑/删除路由无需重启

- :high_voltage: **热加载**: 配置变更<1秒内生效

- :bullseye: **多 predicates**: Path/Method/Header/Query/Cookie

- :counterclockwise_arrows_button: **多服务路由**: 一个路由分发到多个后端服务

- **灰度发布**: Header/Cookie/Query/权重流量分流

***

### :eight: 安全防护

**5种认证方式:**

| 认证方式 | 特点 | 场景 |

| -------------- | --------------- | ------ |

| **JWT** | 无状态,支持自定义Claims | 微服务间 |

| **API Key** | 简单高效 | 第三方API |

| **Basic Auth** | 传统认证 | 内部系统 |

| **HMAC** | 高安全,防篡改 | 金融级 |

| **OAuth2** | 标准授权 | 第三方登录 |

**性能优化:**

- JWT验证缓存: 验证开销降低**\~90%**

- 安全防护链: Security → IP过滤 → 认证

***

### :nine: AI智能分析

**5种AI提供商:**

| 提供商 | 模型 | 特点 |

| ------------- | ------------- | ----- |

| **OpenAI** | GPT-4/3.5 | 通用分析 |

| **Anthropic** | Claude 3 | 推理能力强 |

| **Qwen** | qwen-plus | 成本优化 |

| **DeepSeek** | deepseek-chat | 推理强 |

| **Ollama** | llama2 | 本地部署 |

**AI应用场景:**

- :bar_chart: 指标分析: 上传指标,获取优化建议

- :magnifying_glass_tilted_left: 异常检测: AI识别异常流量模式

- :e_mail: 告警内容: AI自动生成告警邮件

- 性能优化: 基于历史数据调优建议

- :chart_increasing: 容量预测: AI预测未来资源需求

***

### :ten: 高可用设计

#### Redis故障转移 - Shadow Quota方案

**传统方案问题**: Redis故障时重置计数器,导致流量突增

**Shadow Quota方案:**

```

正常: 每秒记录QPS快照 → 计算shadowQuota = globalQPS/节点数

故障: 切换本地限流 → 使用预计算配额 → 流量稳定

恢复: 渐进迁移(10秒) → 10%→20%→…→100%

```

**效果对比:**

| 方案 | 故障流量 | 恢复复杂度 |

| ---------------- | -------- | ------ |

| 重置计数器 | 流量翻倍 | 简单 |

| **Shadow Quota** | **流量稳定** | **简单** |

#### Nacos故障快照缓存

```

正常: Nacos健康 → 主缓存

故障: Nacos不可用 → 快照模式

恢复: Nacos恢复 → 创建新快照

```

***

### :one:1 监控与可观测性

**监控维度:**

| 维度 | 指标 |

| -------- | ------------- |

| **JVM** | 堆内存/GC/线程数 |

| **系统** | CPU/内存使用率 |

| **HTTP** | QPS/响应时间/错误率 |

| **状态码** | 2xx/4xx/5xx分布 |

**审计日志:**

- :memo: 配置变更追踪

- :bar_chart: Diff对比可视化

- :right_arrow_curving_left: 一键回滚

- :bust_in_silhouette: 操作审计

***

## :bar_chart: 性能指标

### 测试结果 (2核/2GB/3副本)

| 指标 | 50用户 | 200用户 | 500用户 |

| ------- | ----- | ----- | ------ |

| **QPS** | 2,500 | 8,000 | 15,000 |

| **P50** | 5ms | 12ms | 25ms |

| **P95** | 15ms | 45ms | 120ms |

| **P99** | 25ms | 80ms | 250ms |

| **错误率** | 0.00% | 0.05% | 0.12% |

### 性能优化效果

- IP过滤前置: **TPS +37%**

- JWT验证缓存: **开销 -90%**

- 非阻塞锁: **零EventLoop阻塞**

***

## 快速开始

### 环境要求

- Java 17+ | Node.js 18+ | Docker 20.10+ (可选)

- Nacos 2.4.3+ | Redis 7+ (可选) | MySQL 8.0+ (可选)

### 一键启动

```bash

# 启动基础设施

docker run -d --name nacos -p 8848:8848 -e MODE=standalone nacos/nacos-server:v2.4.3

docker run -d --name redis -p 6379:6379 redis:7

# 启动服务

cd gateway-admin && mvn spring-boot:run

cd my-gateway && mvn spring-boot:run

cd gateway-ui && npm install && npm run dev

```

### 访问地址

- 管理界面: http://localhost:3000 (admin/admin123)

- 网关地址: http://localhost:80

- Nacos控制台: http://localhost:8848/nacos

***

## 项目成果

### 代码质量

- :white_check_mark: **561个单元测试** (my-gateway 332 + gateway-admin 229)

- :bar_chart: **核心模块覆盖率 >85%**

- :memo: **31个功能文档** + 架构文档(74.8KB)

### 功能模块统计

| 类别 | 模块数 |

| ----- | --------------------------- |

| 核心网关 | 5 (路由/服务发现/负载均衡/SSL/多服务) |

| 安全防护 | 5 (5种认证/IP过滤/XSS/SQL/CSRF) |

| 流量控制 | 4 (限流/熔断/超时/重试) |

| 请求处理 | 4 (请求转换/验证/响应转换/Mock) |

| 监控可观测 | 6 (监控/追踪/过滤器链/AI/历史/异常) |

| 企业特性 | 7 (实例管理/K8s/多租户/审计/告警/AI助手) |

***

## :bullseye: 创新亮点

### 1. Shadow Quota故障转移

业界首创的Redis限流故障转移方案,预计算配额实现平滑降级,**流量稳定性提升300%**

### 2. AI深度集成

- 5种AI提供商支持

- 35+AI工具覆盖路由创建/错误分析/性能优化

- AI自动生成告警内容

### 3. Kubernetes原生

- 一键部署网关实例

- 多环境命名空间隔离

- 自动扩缩容

### 4. 性能优化

- IP过滤前置: **TPS +37%**

- JWT缓存: **验证开销 -90%**

- 非阻塞锁: **零阻塞**

***

## :books: 文档与资源

### 核心链接

- :open_book: [项目地址](https://github.com/leoli5695/scg-dynamic-admin)

- :books: [功能文档](https://github.com/leoli5695/scg-dynamic-admin/tree/main/docs)

- :clapper_board: [演示视频1](https://www.bilibili.com/video/BV1S29xBsEt2)

- [演示视频2](https://www.bilibili.com/video/BV1QC9xB4Ejv)

### 文档体系

- [架构设计](docs/ARCHITECTURE.md) - 系统架构与设计模式

- [快速开始](docs/QUICK_START.md) - 15分钟上手指南

- [错误码规范](docs/ERROR_CODES.md) - 统一错误响应

- [31个功能文档](docs/features/) - 详细功能说明

***

## 适用场景

:white_check_mark: **适合:**

- 微服务架构需要统一API入口

- 多团队协作需要精细化权限管理

- 高可用要求严格的企业

- 希望AI提升运维效率的团队

:cross_mark: **不适合:**

- 简单单体应用(功能过重)

- 预算有限(需一定部署资源)

***

## :glowing_star: 总结

这是一个****生产级****企业API网关解决方案,核心优势:

1. :white_check_mark: **功能完备**: 31个功能模块全覆盖

2. :white_check_mark: **高性能**: IP过滤前置(+37% TPS)、JWT缓存(-90%开销)

3. :white_check_mark: **高可用**: Shadow Quota故障转移、Nacos快照缓存

4. :white_check_mark: **AI赋能**: 5种AI模型,35+智能工具

5. :white_check_mark: **K8s原生**: 一键部署、多环境隔离

6. :white_check_mark: **文档完善**: 架构文档 + 31个功能文档

7. :white_check_mark: **测试覆盖**: 561个单元测试

**无论是初创公司还是大型企业,都可通过本项目快速构建API网关平台,节省数月甚至数年的开发时间。**

***

*最后更新时间: 2026-04-29*

1 个赞