优化代码结构
This commit is contained in:
53
README.md
53
README.md
@@ -1,52 +1,14 @@
|
||||
## todo
|
||||
|
||||
可配置 logger,不直接使用 slog
|
||||
|
||||
授权测试,两种协议,三种认证方式
|
||||
|
||||
连接计时数据清理,避免堆泄露
|
||||
|
||||
找一个其他方式即时关闭未成功建立数据通道的连接
|
||||
|
||||
排查下套接字重复的问题
|
||||
|
||||
建立通道时,发送的 dst 和 tag 等信息,可以用字节表示而非 string,提高效率
|
||||
|
||||
建立数据通道失败后,根据用户所选协议返回对应失败响应
|
||||
|
||||
|
||||
可配配置环境变量
|
||||
|
||||
- 输出级别
|
||||
- 退出等待时间
|
||||
- 数据通道连接超时等待时间
|
||||
- 目标地址连接超时等待时间
|
||||
|
||||
### 长期
|
||||
|
||||
协程池化
|
||||
|
||||
数据通道池化
|
||||
|
||||
数据通道支持 tcp 多路复用(分离逻辑流)
|
||||
|
||||
👆 进阶黑魔法 multipath tcp + 多路复用
|
||||
|
||||
切换到 gnet
|
||||
|
||||
## 开发相关
|
||||
|
||||
### 环境变量
|
||||
### 目录结构
|
||||
|
||||
> 环境变量只记录在程序中用到的变量
|
||||
>
|
||||
> **构建期变量**,比如 docker-compose 中的变量,以及其他配套服务的环境变量,直接写死
|
||||
server/fwd: 服务端核心代码
|
||||
|
||||
新增环境变量时,需要确保两个位置正确传递了变量
|
||||
|
||||
1. 在对应端的 .env.sample 文件中添加变量
|
||||
2. 复制到 .env 文件中,并修改变量值
|
||||
3. 在 docker-compose.yml 和程序中使用变量
|
||||
- core: 核心代码,目前主要是连接管理
|
||||
- dispatcher: 请求处理器,负责解析传入协议,并将请求分发到对应的处理器
|
||||
- http: http 处理器,负责处理 http 请求
|
||||
- socks: socks5 处理器,负责处理 socks5 请求
|
||||
- repo: 状态仓库,所有有状态数据都通过 repo 中的接口与外部服务交互
|
||||
|
||||
### 更新测试环境
|
||||
|
||||
@@ -59,7 +21,6 @@
|
||||
2. 通知并等待所有正在运行的 conn 处理协程全部关闭(user, data, ctrl)
|
||||
3. 结束所有保存且未使用的 conn 连接(user, ctrl)
|
||||
|
||||
|
||||
### 代码清理
|
||||
|
||||
检查 slog 级别:
|
||||
|
||||
Reference in New Issue
Block a user