docs: Refresh deployment and API documentation
- Align deployment guidance with the current three-node Compose topology - Document the current frontend architecture and development workflow - Replace the stale API list with a controller-based route index
This commit is contained in:
+19
-32
@@ -1,38 +1,25 @@
|
||||
# video-gateway模块实现步骤和代码
|
||||
# video-gateway 模块
|
||||
|
||||
API网关模块(video-gateway)实现,这是微服务架构中的入口点,负责请求路由、限流、鉴权等功能。
|
||||
网关服务端口为 `9000`,是所有前端请求的统一入口。路由、公开路径与部分运行参数在 Nacos 的 `video-gateway.yaml` 中维护。
|
||||
|
||||
## 目录结构设计
|
||||
## 当前代码结构
|
||||
|
||||
为video-gateway模块创建以下目录结构:
|
||||
|
||||
```
|
||||
video-gateway/
|
||||
├── src/
|
||||
│ ├── main/
|
||||
│ │ ├── java/
|
||||
│ │ │ └── com/
|
||||
│ │ │ └── nuaa/
|
||||
│ │ │ └── video/
|
||||
│ │ │ └── gateway/
|
||||
│ │ │ ├── config/ # 配置类
|
||||
│ │ │ ├── filter/ # 过滤器
|
||||
│ │ │ ├── handler/ # 处理器
|
||||
│ │ │ └── GatewayApplication.java # 启动类
|
||||
│ │ └── resources/
|
||||
│ │ ├── application.yml # 主配置文件
|
||||
│ │ └── application-dev.yml # 开发环境配置
|
||||
└── pom.xml
|
||||
```text
|
||||
config/
|
||||
CorsConfig.java # CORS
|
||||
DynamicRouteConfig.java # Nacos 动态路由
|
||||
GatewayFallbackConfig.java # Sentinel / 网关降级响应
|
||||
LoadBalancerConfig.java # 负载均衡配置
|
||||
filter/
|
||||
AuthGlobalFilter.java # JWT 与白名单校验
|
||||
RequestLogFilter.java # 请求日志
|
||||
handler/
|
||||
GlobalExceptionHandler.java # WebFlux 异常响应
|
||||
```
|
||||
|
||||
gateway模块具备以下功能:
|
||||
## 行为说明
|
||||
|
||||
1. 基于Spring Cloud Gateway的路由功能
|
||||
2. JWT认证鉴权
|
||||
3. 基于Sentinel的流量控制和服务熔断
|
||||
4. CORS跨域支持
|
||||
5. 请求日志记录
|
||||
6. 全局异常处理
|
||||
7. 动态路由配置
|
||||
|
||||
这个网关将作为整个微服务架构的入口点,为各个微服务提供统一的API访问层。
|
||||
- 通过 Nacos 服务发现将请求路由到认证、用户、内容、评论、推荐和管理服务。
|
||||
- `AuthGlobalFilter` 对非白名单路由校验 Bearer JWT;白名单以 `GATEWAY_IGNORE_URLS` / Nacos 配置为准。
|
||||
- 使用 Spring Cloud Gateway、Sentinel Gateway、Redis Reactive 和 Actuator;内存上传阈值由 `GATEWAY_MAX_IN_MEMORY_SIZE` 与 `GATEWAY_MULTIPART_MAX_IN_MEMORY_SIZE` 配置。
|
||||
- 网关不是业务接口的最终实现位置;接口权威定义在各业务服务 Controller。
|
||||
|
||||
Reference in New Issue
Block a user