Initial commit (code only without large binaries)

This commit is contained in:
robin
2026-02-15 18:58:44 +08:00
commit 35df75498f
9442 changed files with 1495866 additions and 0 deletions

View File

@@ -0,0 +1,99 @@
syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/model_reverse_proxy.proto";
import "models/rpc_messages.proto";
// 反向代理管理服务
service ReverseProxyService {
// 创建反向代理
rpc createReverseProxy (CreateReverseProxyRequest) returns (CreateReverseProxyResponse);
// 查找反向代理
rpc findEnabledReverseProxy (FindEnabledReverseProxyRequest) returns (FindEnabledReverseProxyResponse);
// 查找反向代理配置
rpc findEnabledReverseProxyConfig (FindEnabledReverseProxyConfigRequest) returns (FindEnabledReverseProxyConfigResponse);
// 修改反向代理的调度算法
rpc updateReverseProxyScheduling (UpdateReverseProxySchedulingRequest) returns (RPCSuccess);
// 修改主要源站信息
rpc updateReverseProxyPrimaryOrigins (UpdateReverseProxyPrimaryOriginsRequest) returns (RPCSuccess);
// 修改备用源站信息
rpc updateReverseProxyBackupOrigins (UpdateReverseProxyBackupOriginsRequest) returns (RPCSuccess);
// 修改反向代理设置
rpc updateReverseProxy (UpdateReverseProxyRequest) returns (RPCSuccess);
}
// 创建反向代理
message CreateReverseProxyRequest {
bytes schedulingJSON = 1; // 可选项,调度设置 @link json:scheduling
bytes primaryOriginsJSON = 2; // 可选项,主要源站 @link json:origin_refs
bytes backupOriginsJSON = 3; // 可选项,备用源站 @link json:origin_refs
}
message CreateReverseProxyResponse {
int64 reverseProxyId = 1; // 反向代理ID
}
// 查找反向代理
message FindEnabledReverseProxyRequest {
int64 reverseProxyId = 1; // 反向代理ID
}
message FindEnabledReverseProxyResponse {
ReverseProxy reverseProxy = 1; // 反向代理信息
}
// 查找反向代理配置
message FindEnabledReverseProxyConfigRequest {
int64 reverseProxyId = 1; // 反向代理ID
}
message FindEnabledReverseProxyConfigResponse {
bytes reverseProxyJSON = 1; // 反向代理配置
}
// 修改反向代理调度算法
message UpdateReverseProxySchedulingRequest {
int64 reverseProxyId = 1; // 反向代理ID
bytes schedulingJSON = 2; // 调度配置 @link json:scheduling
}
// 修改主要源站信息
message UpdateReverseProxyPrimaryOriginsRequest {
int64 reverseProxyId = 1; // 反向代理ID
bytes originsJSON = 2; // 源站配置 @link json:origin_refs
}
// 修改备用源站信息
message UpdateReverseProxyBackupOriginsRequest {
int64 reverseProxyId = 1; // 反向代理ID
bytes originsJSON = 2; // 源站配置 @link json:origin_refs
}
// 修改反向代理设置
message UpdateReverseProxyRequest {
int64 reverseProxyId = 1; // 反向代理ID
int32 requestHostType = 6; // 可选参数回源主机名类型0 跟随CDN域名1跟随源站2自定义
string requestHost = 2; // 可选参数,自定义回源主机名
bool requestHostExcludingPort = 15; // 可选参数,回源主机名中去除端口
string requestURI = 3; // 可选参数请求URI
string stripPrefix = 4; // 可选参数去除URI前缀
bool autoFlush = 5; // 可选参数,自动刷新
repeated string addHeaders = 7; // 可选参数,可以添加的请求报头
bytes connTimeoutJSON = 8; // 可选参数,连接超时时间
bytes readTimeoutJSON = 9; // 可选参数,读取超时时间
bytes idleTimeoutJSON = 10; // 可选参数,空闲连接超时时间
int32 maxConns = 11; // 可选参数,最大连接数
int32 maxIdleConns = 12; // 可选参数,最大空闲连接数
bytes proxyProtocolJSON = 13; // 可选参数PROXY Protocol设置
bool followRedirects = 14; // 可选参数,跳转跟随
bool retry50X = 16; // 可选参数是否启用50X重试
bool retry40X = 17; // 可选参数是否启用40X重试
}