组件说明
2025/7/10大约 1 分钟
组件说明
组件结构
├─src
│ ├─main
│ │ ├─java
│ │ │ └─top
│ │ │ └─codelong
│ │ │ └─findsdk
│ │ │ ├─annotation
│ │ │ │ ApiInterface.java
│ │ │ │ ApiMethod.java
│ │ │ │
│ │ │ ├─config
│ │ │ │ DubboConfig.java
│ │ │ │ GatewaySDKAutoConfig.java
│ │ │ │ GatewayServerConfig.java
│ │ │ │ RedisConfig.java
│ │ │ │
│ │ │ ├─enums
│ │ │ │ HttpTypeEnum.java
│ │ │ │
│ │ │ ├─listener
│ │ │ │ RedisMessageListener.java
│ │ │ │
│ │ │ ├─service
│ │ │ │ GatewayRegisterService.java
│ │ │ │ HeartbeatService.java
│ │ │ │
│ │ │ └─vo
│ │ │ InterfaceRegisterVO.java
│ │ │ MethodSaveDomain.java
│ │ │
│ │ └─resources
│ │ └─META-INF
│ │ spring.factories
└
组件作用
该组件是一个网关服务上报SDK,主要功能包括:
- 服务注册:自动扫描带有
@ApiInterface
和@ApiMethod
注解的服务实现类,将其接口和方法信息上报到网关中心 - 服务暴露:对Dubbo接口自动进行服务暴露
- 心跳维持:通过Redis监听心跳消息,定期向网关中心发送心跳信息
- 元数据管理:收集接口方法元数据(HTTP/Dubbo类型、认证要求、URL等)
组件构成
组件由以下主要文件构成:
1. 核心服务类
- GatewayRegisterService:服务注册核心逻辑
- HeartbeatService:心跳维持服务
2. 注解
- ApiInterface:标记需要注册的接口类
- ApiMethod:标记接口方法及其属性
3. 配置类
- GatewaySDKAutoConfig:组件自动配置入口
- GatewayServerConfig:网关服务器配置属性
- DubboConfig:Dubbo应用配置
- RedisConfig:Redis消息监听配置
4. 数据模型
- InterfaceRegisterVO:接口注册值对象
- MethodSaveDomain:方法保存领域模型
5. 监听器
- RedisMessageListener:Redis消息监听器
6. 枚举
- HttpTypeEnum:HTTP请求类型枚举