Files
goproxy/internal/proxy/forward_config.go
DarkiT 35f492b1c5 refactor(proxy): 重构反向代理配置转换逻辑
- 添加 convertToReverseConfig 函数,将 config.Config 转换为 reverse.Config
- 修正配置字段映射关系:
  - EnableHTTPS -> DecryptHTTPS
  - EnableWebSocket -> SupportWebSocketUpgrade
- 保持其他配置字段映射不变
- 优化代码格式和注释

BREAKING CHANGE: 反向代理配置结构发生变化,需要更新相关配置
2025-03-13 22:02:30 +08:00

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
}