- 添加 convertToReverseConfig 函数,将 config.Config 转换为 reverse.Config - 修正配置字段映射关系: - EnableHTTPS -> DecryptHTTPS - EnableWebSocket -> SupportWebSocketUpgrade - 保持其他配置字段映射不变 - 优化代码格式和注释 BREAKING CHANGE: 反向代理配置结构发生变化,需要更新相关配置
59 lines
1.3 KiB
Go
59 lines
1.3 KiB
Go
package proxy
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
// ForwardProxyConfig 正向代理配置
|
|
type ForwardProxyConfig struct {
|
|
BaseConfig
|
|
// 是否启用负载均衡
|
|
EnableLoadBalancing bool
|
|
// 负载均衡后端列表
|
|
Backends []string
|
|
// 是否启用限流
|
|
EnableRateLimit bool
|
|
// 每秒请求速率限制
|
|
RateLimit float64
|
|
// 并发请求峰值限制
|
|
MaxBurst int
|
|
// 最大连接数
|
|
MaxConnections int
|
|
// 是否启用连接池
|
|
EnableConnectionPool bool
|
|
// 连接池大小
|
|
ConnectionPoolSize int
|
|
// 连接空闲超时时间
|
|
IdleTimeout time.Duration
|
|
// 请求超时时间
|
|
RequestTimeout time.Duration
|
|
// 是否启用响应缓存
|
|
EnableCache bool
|
|
// 缓存过期时间
|
|
CacheTTL time.Duration
|
|
// 是否启用HTTPS解密
|
|
DecryptHTTPS bool
|
|
// 是否启用健康检查
|
|
EnableHealthCheck bool
|
|
// 健康检查间隔时间
|
|
HealthCheckInterval time.Duration
|
|
// 健康检查超时时间
|
|
HealthCheckTimeout time.Duration
|
|
// 是否启用重试机制
|
|
EnableRetry bool
|
|
// 最大重试次数
|
|
MaxRetries int
|
|
// 重试间隔基数
|
|
RetryBackoff time.Duration
|
|
// 最大重试间隔
|
|
MaxRetryBackoff time.Duration
|
|
// 是否启用监控指标
|
|
EnableMetrics bool
|
|
// 是否启用请求追踪
|
|
EnableTracing bool
|
|
// 是否拦截WebSocket
|
|
WebSocketIntercept bool
|
|
// DNS缓存过期时间
|
|
DNSCacheTTL time.Duration
|
|
}
|