mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 09:20:22 +08:00
feat(aether-proxy): 网络层全面优化与代理耗时追踪
aether-proxy: - 新增 20+ 可配置参数:Aether API/delegate/CONNECT 各阶段超时、连接池、TCP keepalive/nodelay - AetherClient 支持指数退避重试(可配置次数/延迟)和 HTTP/2 - 新增 DNS 缓存(TTL + 容量限制)避免重复解析 - 新增并发连接数限制(Semaphore,默认基于硬件估算) - CONNECT 隧道增加建连超时和升级超时 - TLS 增加握手超时、会话缓存(session ticket + memory cache)、ALPN 协商 - 新增 ProxyMetrics 收集请求计数和延迟,通过心跳上报 - delegate 响应注入 X-Proxy-Timing 头(dns_ms/upstream_ms/total_ms) 后端: - StreamContext 和 handler 提取 X-Proxy-Timing 写入 proxy_info 追踪数据 前端: - 请求时间线展示代理分阶段耗时(DNS/上游) - Endpoint 添加按钮改为文字按钮样式
This commit is contained in:
@@ -125,6 +125,26 @@ mod tests {
|
||||
heartbeat_interval: 30,
|
||||
allowed_ports: vec![80, 443],
|
||||
timestamp_tolerance: 300,
|
||||
aether_request_timeout_secs: 10,
|
||||
aether_connect_timeout_secs: 10,
|
||||
aether_pool_max_idle_per_host: 8,
|
||||
aether_pool_idle_timeout_secs: 90,
|
||||
aether_tcp_keepalive_secs: 60,
|
||||
aether_tcp_nodelay: true,
|
||||
aether_http2: true,
|
||||
aether_retry_max_attempts: 3,
|
||||
aether_retry_base_delay_ms: 200,
|
||||
aether_retry_max_delay_ms: 2000,
|
||||
max_concurrent_connections: None,
|
||||
connect_timeout_secs: 30,
|
||||
tls_handshake_timeout_secs: 10,
|
||||
dns_cache_ttl_secs: 60,
|
||||
dns_cache_capacity: 1024,
|
||||
delegate_connect_timeout_secs: 30,
|
||||
delegate_pool_max_idle_per_host: 64,
|
||||
delegate_pool_idle_timeout_secs: 300,
|
||||
delegate_tcp_keepalive_secs: 60,
|
||||
delegate_tcp_nodelay: true,
|
||||
log_level: "info".to_string(),
|
||||
log_json: false,
|
||||
enable_tls: false,
|
||||
|
||||
Reference in New Issue
Block a user